我有一个表单,但我希望每个用户只发送一次,所以我想设置一个cookie来做到这一点。我该如何更改脚本?
我的PHP脚本:
<?php
if (isset($_COOKIE["Form"]) == 1)
{
//Hide form
exit();
}
if ( $_GET['value'] <> "")
{
$adress = 'Receiver@mysite.com';
$subject = 'SUBJECT';
$text = 'TEXT';
mail($adress,
$subject,
$text,
'From: someone@mail.here');
$handle = fopen ( "some-doc.txt", "a" );
fwrite ( $handle, $_GET['value'] );
fclose ( $handle );
echo "Thanks";
setcookie("Form", 1, time()+3600*24*60); // Line 108
exit;
}
?>
错误消息
Warning: Cannot modify header information - headers already sent by (output started at
form.php:6) in
form.php on line 108
我改变了它,但现在我收到了这个错误。
答案 0 :(得分:0)
将行setcookie("Schule", 1, time()+3600*24*60);
放在退出语句之前,并替换&#34; Schule&#34;用&#34; Form&#34;。
答案 1 :(得分:0)
我看到你做到了:
setcookie("Schule", 1, time()+3600*24*60);
然后使用类似的方法:
setcookie("Form", 'yes', time()+3600*24*60);
现在:
if (isset($_COOKIE["Form"]) && $_COOKIE["Form"] == 'yes')
{
//Hide form
exit();
}