请告诉我如何从 quizID 部分获取随机问题“$randomQuestion”(即“天空是什么颜色?”)和匹配答案 $matchingAnswer
我的SQL数据库,然后使用jQuery来刷新表单,仅此而已?我首先创建了表单和一些可能有效的 JavaScript。
表格:
<form name="$quizID" action="http://asite.com" method="post">
<fieldset>
<legend="$randomQuestion">
<p>
<label>Answer: <input type="text" id="answer" onkeydown="submitAns(submit.id)" /></label>
</p>
</fieldset>
</form>
JS:
function submitAns(id) {
if (document.getElementById(id).value=="$matchingAnswer")
document.a.submit();
}
JQUERY:
$.post('get-question_matchinganswer_for_quizID.php', {
quizID: $quizID,
question },
function(data) {
alert('Question is: ' + data.question)
alert('Answer is: ' + data.answer)
},
'json'
);
PHP:
<!-- Help -->
function random_row($table, $column) {
$max_sql = "SELECT max(" . $column . ")
AS max_id
FROM " . $table;
$max_row = mysql_fetch_array(mysql_query($max_sql));
$random_number = mt_rand(1, $max_row['max_id']);
$random_sql = "SELECT * FROM " . $table . "
WHERE " . $column . " >= " . $random_number . "
ORDER BY " . $column . " ASC
LIMIT 1";
$random_row = mysql_fetch_row(mysql_query($random_sql));
if (!is_array($random_row)) {
$random_sql = "SELECT * FROM " . $table . "
WHERE " . $column . " < " . $random_number . "
ORDER BY " . $column . " DESC
LIMIT 1";
$random_row = mysql_fetch_row(mysql_query($random_sql));
}
return $random_row;
}
$randomQuestion =
$matchinAnswer =
这对我来说非常复杂,我一直在为此烦恼。请给出意见。谢谢。
最佳答案
首先,您的 HTML 无效:您没有关闭标签:
<form name="$quizID" action="http://asite.com" method="post">
<fieldset>
<legend><?php echo $randomQuestion?></legend>
<label>
Answer: <input type="text" id="answer"
onkeydown="submitAns(submit.id)" />
</label>
</fieldset>
</form>
至于ajax,我建议使用jQuery。它使事情变得更加容易。
$.post('getqidqandanswer.php', {
quizID: 1337,
questionID: 42},
function(data) {
alert('Question is: ' + data.question)
alert('Answer is: ' + data.answer)
},
'json'
);
PHP:
$quizID = isset($_POST['quizID']) ? $_POST['quizID'] : null
$questionID = isset($_POST['questionID']) ? $_POST['questionID'] : null
if($quizID && $questionID)
{
$data = getQuestionData($quizID, $questionID)
}
elseif($quizID)
{
$data = getRandomQuestionData($quizID)
}
else
{
$data = array(
'question' => '',
'answer' => ''
)
}
echo json_encode($data)
关于php - 请帮我获取 $randomQ 和 $matchinA,然后在输入 $matchinA 时刷新 jQuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3695583/