「ques」と「ans」の 2 つの列を持つテーブルを作成します。このクエリを比較した後、mysql_nuum_rows($result) によってフェッチされた行数を計算します。すべての質問で同じオプション (各ケースの最後のオプション、つまりラジオ ボタンの D) を選択している場合など、特定のケースでエラーが発生します。残りは完全に機能しています。
私は何を間違っていますか?
// (Values are coming from html form consisting of 4 sets of 4 radio buttons)
$q1=$_POST['q1'];
$q2=$_POST['q2'];
$q3=$_POST['q3'];
$q4=$_POST['q4'];
$result = mysql_query("SELECT * FROM Test
WHERE (ques='q1' AND ans='$q1')
OR (ques='q2' AND ans='$q2')
OR (ques='q3' AND ans='$q3')
OR (ques='q4' AND ans='$q4')");
期待される出力:
4 問中 3 問正解 (3 問正解mysql_num_rows()
)
Error Coming:
SQL 構文にエラーがあります。near 'q2' AND ans='4') OR (ques='q3' AND ans='4') OR (ques='q4' AND ans を使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください='4')' 1 行目