如何仅使用 $_SESSION(意味着不使用 $_COOKIE)显示保存在“名称”和“电子邮件”中的变量?
我创建了这个使用 $_COOKIE 工作的程序,但是(我知道)它的设计并不是很好。我只是在学习。但我正在尝试转换使用 $_SESSION 而不是 $_COOKIE 收集数据的表单。我所做的只是用 $_SESSION 替换了 $_COOKIE(少了 setcookie 等)。我的目标是,如果您单击“记住我”,它会记住您的“姓名”和“电子邮件”,这样您就可以在重新打开浏览器时直接单击“链接”下载内容。
<?php
session_start();
// session
if (isset($_POST['remember'])) {
$customer_name = $_SESSION['name'];
if (!($customer_name)) {
$customer_name = $_POST['name'];
}
$customer_email = $_SESSION['email'];
if (!($customer_email)) {
$customer_email = $_POST['email'];
}
//If Form submitted
//I.e. Email validation that will check if field is empty or doesn't
//If there is no error
echo 'Here's the <a href="http://www.google.com/something">link.<br />';
//else there's error
<form name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Name:
<?php
if (isset($_SESSION['name'])) {
echo $_SESSION['name']."<br />";
}
else {
?>
<input type="text" name="name" value="<?php echo $_POST['name']; ?>" size="25" /><br />
<?php } ?>
Email:
<?php
if (isset($_SESSION['email'])) {
echo $_SESSION['email']."<br /><br />";
}
else {
?>
<input type="text" name="email" value="<?php echo $_POST['email']; ?>" size="25"/>
<input type="checkbox" name="remember" /> Remember me
<input type="submit" name="Submit" />
<?php } ?>
</form>