2013-01-24 60 views
1

我正在嘗試向我的網站添加聯繫人表單,但每次點擊發送時,都會將我帶到黑色窗口,地址欄顯示contact.php。它也不會重定向回來。 我的網站作爲使用谷歌應用程序引擎的應用程序託管。PHP聯繫表格無法正常工作

我嘗試了一切,但我無法讓它工作。

下面是我HTML代碼

<form action="contact.php" method="post"> 
    <p>Your name</p> 
    <input type="text" name="name"/> 
    <p>Your e-mail</p> 
    <input type="text" name="email"/> 
    <p>Message</p> 
    <textarea name="message"></textarea> 
    <input type="submit" value="Send"/> 
    <input type="reset" value="Clear"/> 
</form> 

,這裏是我的PHP代碼

<?php 
$field_name = $_POST['name']; 
$field_email = $_POST['email']; 
$field_message = $_POST['message']; 

$mail_to = '[email protected]'; 
$subject = 'Message from a site visitor '.$field_name; 

$body_message = 'From: '.$field_name."\n"; 
$body_message .= 'E-mail: '.$field_email."\n"; 
$body_message .= 'Message: '.$field_message; 

$headers = 'From: '.$field_email."\r\n"; 
$headers .= 'Reply-To: '.$field_email."\r\n"; 

$mail_status = mail($mail_to, $subject, $body_message, $headers); 

if ($mail_status) { ?> 
    <script language="javascript" type="text/javascript"> 
     alert('Thank you for the message.'); 
     window.location = 'contact.html'; 
    </script> 
<?php 
} 
else { ?> 
    <script language="javascript" type="text/javascript"> 
     alert('Message failed.'); 
     window.location = 'contact.html'; 
    </script> 
<?php 
} 
?> 
+1

打開錯誤報告。 – itachi

回答

2

您需要一個郵件服務器,PHP不會自己發送郵件。先安裝一個。而且,文本區域缺少關閉標記。

+0

我該怎麼做? – kalpetros

+0

你使用的是Windows或Linux? –

+0

我正在使用Windows。 – kalpetros

0

你錯過了在窗體關閉textarea標籤。我在我的服務器上以contact.php身份試過這個代碼,它工作正常。我同意itachi,你需要打開錯誤報告。

爲什麼不讓contact.php成爲一個完整的頁面並完全擺脫重定向?

0

對我來說工作很好。如果字段沒有值,您的if else條件無法正常工作,那麼它仍然會提供謝謝信息。