2012-01-08 122 views
0

试图写一个接触的形式脚本只是我的下页心不是处理...联系表格错误PHP

<?php 

$rpname = $_POST['name']; 
$rpnumber = $_POST['phone']; 

echo $rpname; 
echo $rpnumber; 

$rpname = $_POST['name']; 
$rpnumber = $_POST['phone']; 
$to = "[email protected]"; // CHANGE THIS TO EMAIL YOU WANT 
$subject = "Phonecall Request" 

//begin of HTML message 
$message = " 
    Phone call request - 
    From : $rpname, 
    Number: $rpnumber 
"; 

    $headers = "MIME-Version: 1.0rn"; 
    $headers .= "Content-type: text/html; charset=iso-8859-1rn"; 
    $headers .= "From: Website Enquiry"; 



if (isset($rpname)) 
{ 
     // now lets send the email. 
    mail($to, $subject, $message, $headers); 
    $page='index.html'; 
header('Location:'.$page); 
header('Location: ' . $_SERVER['HTTP_REFERER'] . '?e=Message Sent!'); 

} ?> 

我用尽呼应顶部得到一个空白页,没有源变量,但即时通讯.. 。

+0

在脚本的开始处添加这个错误,并报告错误,您将收到error_reporting(E_ALL); ini_set('display_errors','1');' – nicky77 2012-01-08 20:27:33

+0

也尝试print_r($ _ POST);在顶部,打印出阵列 – 2012-01-08 20:28:01

回答

3

$subject = "Phonecall Request"之后需要用分号(;)。

如果您的配置启用了错误报告,您将自己发现此错误。这是否在您的php.ini文件中。这很可能位于/etc/php5/cgi/。添加以下行:

display_errors = On 
error_reporting = E_ALL 

如果您没有访问此服务器上,您可以将其添加在每个文件的基础上,通过包括在每个PHP文件开头以下行:

ini_set('display_errors', '1'); 
error_reporting(E_ALL); 
+0

无法看到树木,非常感谢! – Liam 2012-01-08 20:30:09

+0

@Truth,你说得对。我添加了它。 利亚姆,不客气。 – kba 2012-01-08 20:40:49

0

我觉得你对线复制错误:

$headers = "MIME-Version: 1.0rn"; 
$headers .= "Content-type: text/html; charset=iso-8859-1rn"; 
$headers .= "From: Website Enquiry"; 

它应该是这样的:

$headers = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
$headers .= "From: Website Enquiry"; 

rn没有意义免除你想要的\r\n这是一个换行符。

+0

啊,谢谢你指出了! – Liam 2012-01-08 20:29:52

+0

这确实是一个问题,但它不会导致OP描​​述的错误。很好的接收,但你也应该提到他应该启用错误显示。 – 2012-01-08 20:30:20