2013-02-25 63 views
1

我有一個表單,但我希望它只發送一次每個用戶,所以我想設置一個cookie來做到這一點。我該如何改變腳本?允許一個表單提交Cookie

我的PHP腳本:

<?php 
if (isset($_COOKIE["Form"]) == 1) 
{ 
//Hide form 
exit(); 
} 
if ($_GET['value'] <> "") 
{ 
$adress = '[email protected]'; 
$subject = 'SUBJECT'; 
$text = 'TEXT'; 
mail($adress, 
$subject, 
$text, 
'From: [email protected]'); 
    $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

我看到你做的事:

setcookie("Schule", 1, time()+3600*24*60); 

然後使用類似的方法:

setcookie("Form", 'yes', time()+3600*24*60); 

現在:

if (isset($_COOKIE["Form"]) && $_COOKIE["Form"] == 'yes') 
{ 
//Hide form 
exit(); 
} 
+0

我改變了它,但現在我得到錯誤信息,我貼以上。 – JSHelp 2013-02-27 16:27:31

0

在退出語句之前放置行setcookie("Schule", 1, time()+3600*24*60);並將「Schule」替換爲「Form」。