私が作成しているクイズで以下を使用しています。テーブルをチェックして、ユーザーが質問への回答を既に投稿していて、送信ボタンを押していないかどうかを確認します。私が抱えている問題は、情報を投稿していないことです。奇妙な理由でデータベース。ifステートメントと最初のデータベースを取り出してデータを投稿するだけでは正常に機能しますが、最初のクエリの結果を最初に確認すると、ユーザーが送信していなくても機能していないようです。まだ答えます。
<?php
$quizID = $_GET['quiz'];
$userID = $_GET['user'];
$quizselectanswer = $_POST['quizselectanswer'];
$cf_created = date("y/m/d");
$questionID = $_POST['questionID'];
// Check to see if user answered question already
$result = mysql_query("SELECT questionID,userID FROM itsnb_chronoforms_data_answerquiz WHERE questionID='$questionID' AND userID='$userID' LIMIT 1") or die(mysql_error());
while($row = mysql_fetch_array($result))
{
if (empty($row))
{
mysql_query("INSERT INTO itsnb_chronoforms_data_answerquiz (cf_created, questionID,quizselectanswer,quizID, userID)
VALUES ('$cf_created', '$questionID', '$quizselectanswer', '$quizID','$userID')")
or
die(mysql_error());
}else{
}
}
?>
私のデータベースは次のようitsnb_chronoforms_data_answerquiz
cf_id
になります、、、、、、、、、、、、。cf_uid
cf_created
cf_modified
cf_ipaddress
cf_user_id
questionID
quizselectanswer
quizID
userID