你好,我現在確實發現了自己在一個任務挑戰中,現在基本上我已經能夠完全實現挑戰了,但有一件事我應該能夠改變$瀏覽刷新_SESSION超全球我已經看過所有類型的可能的替代品,但似乎沒有任何工作,任何幫助善意評價這是我的代碼我在尋找的是一個方法,$ _SESSION在瀏覽器刷新每個工作版本這似乎是可能的,我不知道要嘗試哪些其他辦法,我曾試圖取消設置會話或破壞,但它會刪除整個窗體:PHP試圖找出一種刷新瀏覽器刷新會話的方式
<?php
session_start();
if(!isset($_SESSION['secret'])) {
$possible_chars = array_merge(range('A','Z'),range('0','9'));
shuffle($possible_chars);
$string = substr(implode($possible_chars),0,5);
$_SESSION['secret'] = $string;
}
else {
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>THIS FORM POST TO ITSELF TO BE SURE THE USER ENTERS THE RIGHT INFO</title>
<IMG SRC="index.php" alt="captcha"/>
</head>
<body>
<h1>Captcha Form</h1>
<form method="post" action="index.php">
<fieldset>
<ul>
<li>
<label for="email">Email</label>
<br>
<input name="email" id="email" value="<?php if(isset($_POST['email'])) echo $_POST['email']; ?>" />
</li>
<li>
<label for="comments">Comments</label>
<br>
<input name="comments" id="comments" value = "<?php if(isset($_POST['comments'])) echo $_POST['comments']; ?>" />
</li>
<li>
<label for="captcha">Please input CAPTCHA:</label>
<br>
<input name="captcha" id="captcha"/>
</li>
<li>
<input type="submit" name="submit" value="Submit My Captcha!"/>
</li>
</ul>
<?php print_r($_SESSION['secret']); ?>
<br\>
<br\>
<?php
$answer = (isset($_POST['captcha']) ? $_POST['captcha'] : null);
$email = (isset($_POST['email']) ? $_POST['email']: null);
$comments = (isset($_POST['comments']) ? $_POST['comments']: null);
if(!empty($_POST)) {
if (strcasecmp($answer,$_SESSION['secret']) != 0) {
//($_SESSION['secret'] != $answer)
echo "Fee Fi Fo Fum Fot I smell the blood of an automated bot!";
//$_SESSION['secret'] = NULL;
header('captcha_challenge.php');
//$_SESSION['secret'] = NULL;
}
elseif (strcasecmp($answer,$_SESSION['secret']) == 0) {
//($_SESSION['secret'] == $answer)
unset ($_SESSION['secret']);
$_SESSION['email'] = $_POST['email'];
$_SESSION['comments'] = $_POST['comments'];
$query = ("INSERT INTO comments (email, content) VALUES ('$email', '$comments')");
$results = $db->query($query);
header('Location:goodMessage.php');
}
}
}
?>
PHP不知道。到PHP這只是另一個要求。我甚至無法想象它爲什麼會有用。 – Bart 2013-03-19 17:43:54