每次刷新页面时我都需要对数组进行洗牌,但是当我提交时我需要最后的结果。在我的情况下,数组在提交时保持随机播放。
$a = array("test1","test2","test3");
shuffle($a);
$result = $a[0];
示例$result = "test2";
这是我的代码
if($_POST["submit"]) {
//when do submit $result is shuffling again
if($_POST["input_text"] == $result) {
echo "true";
}else {
echo "false";
}
}
<form method='POST'>
<input type="text" name="input_text">
<input type="submit" name="submit" value="submit">
</form>
实际上,我可以将结果传递给隐藏的输入类型,但我想阻止使用输入类型隐藏方法。
答案 0 :(得分:1)
您可以在初始加载时单独保存结果。您可以从使用会话开始:
<?php
// start the session
session_start();
function shuffle_array() {
$a = array("test1","test2","test3");
shuffle($a);
$result = $a[0];
$_SESSION['result'] = $result;
}
if(!empty($_POST["submit"])) { // submitted
if($_POST["input_text"] == $_SESSION['result']) {
echo "true";
// if correct, shuffle again
shuffle_array();
} else {
// try until you get it correct
echo "false";
}
} else {
// not submitted or initial
shuffle_array();
}
?>