下面的代码是一个简单的实验。在这里,我试图创建一个名称输入表单,该表单将在浏览器中设置为cookie。但它似乎根本不起作用。这里的问题可能在哪里。我是php的初学者。所以,如果有人指出我在上犯的错误,那就太好了
<?php
if(isset($_POST['name']) && !empty($_POST['name'])){
$cookie_value=$_POST['name'];
setcookie('user',$cookie_value, time() + 3600, '/');
}
?>
<html>
<body>
<?php
if(isset($cookie_value)&& !empty($cookie_value)) {
echo "user is".$cookie_value;
} else {
echo "Cookies are not set";
}
?>
<form action=<?php echo $_SERVER['PHP_SELF'] ?> method='post'>
<input type='text' name='text'>
<input type='submit' value='submit'>
</form>
</body>
</html>
您正在调用$_POST['name']
,但您的输入名称是text
。可能要将变量更改为$_POST['text']
。
设置cookie并重定向到另一个页面(第一次重定向后cookie将可见)后,您可以使用$_COOKIE['user']
访问该cookie。
我在你的代码中看不到这一点,我很确定这就是原因。
下一个问题是错误的输入名称,就像@castis指出的那样。