好吧,我正在做的是我有一个文本框和提交按钮,发布到当前页面。用户可以在其中输入他们的名字。 它会创建一个cookie,并且在按下提交后,cookie将在页面上回显出来。
但我似乎无法在一页刷新中这样做。
这是我到目前为止所做的:
<?php
error_reporting(E_ALL ^ E_NOTICE);
?>
<form action="#" method="post">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php
$post = $_POST["fname"];
$expire=time()+60*60*24*30;
setcookie("user", $post, $expire);
echo $_COOKIE["user"];
?>
谢谢!
答案 0 :(得分:2)
设置好Cookie后,可以在下一页加载时使用$_COOKIE
或$HTTP_COOKIE_VARS
数组访问这些Cookie:
<?php
if (isset($_POST['fname'])) {
$post = $_POST["fname"];
$expire=time()+60*60*24*30;
setcookie("user", $post, $expire);
header("Location: index.php"); //notice the redirect?
}
?>
<form action="" method="post">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php if (isset($_COOKIE['user'])) {
echo $_COOKIE["user"];
}
?>
答案 1 :(得分:1)
cookie
<?php
error_reporting(E_ALL ^ E_NOTICE);
if(isset($_POST['fname'){
$post = $_POST["fname"];
$expire=time()+60*60*24*30;
setcookie("user", $post, $expire);
echo $_COOKIE["user"];
}
?>
<form action="#" method="post">
Name: <input type="text" name="fname">
<input type="submit">
</form>
答案 2 :(得分:1)
尝试此代码我还添加了一些检查:
<?php
error_reporting(E_ALL ^ E_NOTICE);
if ($_SERVER['REQUEST_METHOD'] === 'post' && isset($_POST['fname']) && !empty($_POST['fname'])) {
$post = $_POST["fname"];
$expire=time()+60*60*24*30;
setcookie("user", $post, $expire);
}
?>
<form action="#" method="post">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php if (isset($_COOKIE['user'])) {
echo $_COOKIE["user"];
} else {
echo 'There is no firstname.';
}
?>