1

我有一个表单,但我希望每个用户只发送一次,所以我想设置一个 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

我改变了它,但现在我得到了这个错误。

4

2 回答 2

0

将该行setcookie("Schule", 1, time()+3600*24*60);放在退出语句之前,并将“Schule”替换为“Form”。

于 2013-02-25T15:56:34.393 回答
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();
}
于 2013-02-25T15:57:52.350 回答