我搜索了這個網站上的類似問題,並且嘗試了十多個建議,但只有一點點接近解析。會話變量爲空
我開始使用HTML & PHP,所以這是一個非常簡單的幾個腳本。
我正在設置一個數學問題的數組(測試我9歲的兒子)。 第一個腳本「mathtest.php」設置數組並在$ _session全局變量中設置了一些變量,然後表單將問題的答案提交給「mathtest1.php」。
當我到達「mathtest1.php」時,My $ _session變量丟失。
請幫忙。我知道我可以用餅乾做點什麼,但我真的想提高我對會話的理解。
這裏的2個腳本:
「mathtest.php」:
<?php
session_start();
?>
<html>
<title>Math Test</title>
<head>Math Test</head>
<body>
<?php
$arrayindex = 0;
for ($L = 1; $L <= 12; $L++) {
for ($R = 12; $R >= 1; $R--) {
$setupquestions[$arrayindex] = $L.'*'.$R;
$arrayindex++;
}
}
$_session["questions"] = $setupquestions;
$_session["randomkey"] = array_rand($_session["questions"],1);
?>
<form action="mathtest1.php" method="post">
What is <?php echo $_session["questions"][$_session["randomkey"]]." ?" ?>
<input type="text" name="answer">
<input type="submit" name = "submit">
</form>
</body>
</html>
如預期,但下面的腳本都是空值,會話變量我「米試圖訪問上述作品腳本以及使用
「mathtest1.php」:
<?php
session_start();
?>
<html>
<body>
<?php
if(isset($_POST['submit']))
{
$answer = $_POST['answer'];
$result = eval("return $_session[questions]$_session[randomkey];");
echo "result = ".$result."<br />";
if ($answer == $result) {
echo "Correct!!";
}
else {
echo "WRONG!!";
}
}
$_session["randomkey"] = array_rand($_session["questions"],1);
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
What is <?php echo $_session["questions"][$_session["randomkey"]]." ?" ?>
<input type="text" name="answer">
<input type="submit" name = "submit">
</form>
</body>
</html>
其他詳情: OS X,Chrome瀏覽器,最新版本的PHP XAMPP安裝&腳本與XAMPP位於同一檯筆記本電腦上,而不是位於外部服務器上。 會話cookie爲ON ... Trans_ID爲ON 我已閱讀&寫入會話保存路徑。
Savid打我! – Virendra 2011-12-27 01:13:47
認真嗎? .... 有用! ...我想我已經瞭解到編程是非常直接的。非常感謝。 – Loumont 2011-12-27 03:13:17
@Loumont,因爲這回答了你的問題,你應該用這個答案左邊的複選標記來標記它。 – jlafay 2011-12-27 17:26:29