1

私はフォームを持っていますが、ユーザーごとに 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

exit ステートメントの前に行を配置し、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 に答える