Tôi có mã PHP sau đây dành cho hệ thống bỏ phiếu của ứng dụng. Ứng dụng Q & Một ứng dụng và người dùng có thể bỏ phiếu cho các câu hỏi và câu trả lời được đăng.Cách xem kết quả truy vấn SQL có trống không trước khi thực hiện các truy vấn khác trong PHP
Trong mã php của tôi, trước tiên tôi kiểm tra xem người dùng đã bỏ phiếu cho một câu hỏi cụ thể chưa. Điều này sẽ tồn tại trong bảng QVOTES, với email và id của câu hỏi được bình chọn.
Khi thực hiện kiểm tra này, tôi không chắc chắn làm thế nào để xem liệu kết quả $ là một bộ trống, để gửi phiếu bầu của người dùng nếu họ chưa bỏ phiếu cho câu hỏi.
Tôi có thể làm việc này bằng cách nào? Tất cả sự giúp đỡ được đánh giá cao.
<?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);
Tôi nghĩ tình trạng của bạn là sai. bạn nói nếu người dùng không bỏ phiếu cho câu hỏi thì chỉ chèn bản ghi. nhưng qua tình trạng của bạn, có vẻ như điều ngược lại xảy ra? Phải không? –
Ngoài ra cách bạn kiểm tra xem người dùng đã bỏ phiếu cho một câu hỏi hay chưa? bởi vì tôi không thấy user_id ở bất kỳ đâu trong ảnh. cảm ơn –
@anantkumarsingh id người dùng thực sự là email của người dùng. –