Mam następujący kod PHP, który jest przeznaczony do systemu głosowania aplikacji. Jest to aplikacja Q &, a użytkownik może głosować na pytania i odpowiedzi, które są publikowane.Jak sprawdzić, czy wynik zapytania SQL jest pusty przed wykonaniem innych zapytań w PHP
W moim kodzie php, najpierw sprawdzam, czy użytkownik głosował na konkretne pytanie. To będzie istniało w tabeli QVOTES, z adresem e-mail i identyfikatorem pytania, na które głosowano.
Podczas przeprowadzania tego sprawdzenia nie jestem pewien, jak sprawdzić, czy wynik $ jest zbiorem pustym, aby przesłać głos użytkownika, jeśli jeszcze nie głosował na pytanie.
Jak to działa? Cała pomoc jest bardzo doceniana.
<?php
$con=mysqli_connect("127.2.1.1","S837","887","D887");
if (mysqli_connect_errno($con))
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$qid = $_POST['qid'];
$email = $_POST['email'];
$result = mysqli_query($con, "SELECT * FROM QVOTES WHERE QID = $qid AND EMAIL = '$email'");
if (!mysqli_num_rows($result)){
if ($result = mysqli_query($con, "INSERT INTO QVOTES (QID, EMAIL) VALUES ($qid, '$email')")) {
mysqli_query($con, "Update QUESTIONS SET VOTES = VOTES +1 WHERE QID = $qid");
echo "Update successful";
} else{
echo "Update unsuccessful";
}
} else{
echo "null";
}
mysqli_close($con);
Myślę, że twój stan jest zły. powiedziałeś, że jeśli użytkownik nie głosuje na pytanie, to wstaw tylko rekord. ale przez twój stan wydaje się po prostu odwrotnie? Czyż nie? –
Również, w jaki sposób sprawdzasz, czy użytkownik zagłosował na pytanie, czy nie? ponieważ nigdzie w obrazie nie widzę identyfikatora użytkownika. dzięki –
@antantkumarsingh identyfikator użytkownika to w rzeczywistości adres e-mail użytkownika. –