我正在尝试使用单选按钮进行测验,但我不知道如何在单击按钮后发布答案我添加了一些注释,我在代码的末尾解释了这一点。
<!doctype html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script>
</head>
<body>
<?php
echo "<b> QUIZZZ!!!!! </b> <br>";
echo "----------------------------------------------------------------<br>";
$k=1;
$filmat = array("Horror","Aksion","Komedi","Romance","Thriller","Fantazi");
for ($i=0; $i <=5 ; $i++) {
echo "$k) Do u like {$filmat[$i]} movies?";// willl genearate questions from 1->6
echo "<br>";
echo"<input type='radio' id='butonYes$k'>Yes";// will generate buttons with id from 1->6
echo "<br>";
echo "<input type='radio' id='butonNo$k'> No";$k++;
echo "<br>";
}
echo "----------------------------------------------------------------<br>";
echo "the films u selected are: <br>";
// here i want some jquery or php code to print the question with which genere of movies are clicked
//for exaple i want just to print
/*
Horror
Aksion
Fantazi
*/
// if there are the only ones that are cliked yes
//pls help
?>
</body>
</html>
答案 0 :(得分:1)
要实现这一目标,您应该考虑几件事情。首先,您需要将输入元素包装到表单标记中。然后在显示结果之前检查页面是否有POST数据。收音机输入标签最好按名称属性进行分组,而不是全部都带有唯一的ID。
<?php
echo "<b> QUIZZZ!!!!! </b> <br>";
echo "----------------------------------------------------------------<br>";
echo "<form method='POST' action=''>";
$k=1;
$filmat = array("Horror","Aksion","Komedi","Romance","Thriller","Fantazi");
for ($i=0; $i <=5 ; $i++) {
echo "$k) Do u like {$filmat[$i]} movies?";// willl genearate questions from 1->6
echo "<br>";
echo"<input type='radio' name='{$filmat[$i]}' value='yes'>Yes";// will generate buttons with id from 1->6
echo "<br>";
echo "<input type='radio' name='{$filmat[$i]}' value='no'> No";$k++;
echo "<br>";
}
echo "<input type='submit'>";
echo "</form>";
echo "----------------------------------------------------------------<br>";
echo "the films u selected are: <br>";
// do something with the results here
if(isset($_POST) && !empty($_POST)) {
echo "<pre>;";
print_r($_POST);
}
?>