2013-04-05 16 views
0

这是给我这个,而不是改变头中的标头:PHP代码并没有改变

警告:不能更改头信息 - 已经 发送头(输出开始/家庭/内容/ 27/10711827/HTML/contact.php:2) /home/content/27/10711827/html/contact.php上线24

下面是代码。

<?php 

if (empty($_POST) === false){ 
    $errors = array(); 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 

    if (empty($name) === true || empty($email) === true || empty($message) === true){ 
    $error[] = 'Name, email and message is required!'; 
    } else{ 
    if (filter_var($email, FILTER_VALIDATE_EMAIL) === false){ 
     $errors[] = 'That\'s not a valid email address'; 
    } 
    if (ctype_alpha($name) === false){ 
     $errors[] = 'Name must only cotain letters'; 
    } 

    } 

    if(empty($errors) === true){ 
    mail('[email protected]', 'Contact form', '$message', 'From: ' . $email); 
    header('Location: contact.php?sent'); 
    exit(); 
    } 
} 
+0

不知道是什么问题,但你不需要'if(empty($ errors)=== true)'你可以做'if(empty($ errors))'与其他人一样。 – elclanrs 2013-04-05 01:21:47

+0

contact.php第24行的内容是什么? – jcbwlkr 2013-04-05 01:22:23

+0

好的,谢谢我会尝试在第24行工作的mabely – user2229396 2013-04-05 01:23:44

回答

3

这发生在您的代码在您尝试发送标题时已经生成了一些内容时。确保你的代码没有产生任何警告。如果您确定不是这种情况,请确保在打开<?php标记之前没有任何空行。

+0

工作非常感谢。 – user2229396 2013-04-05 01:33:51

0

如果在打开<?php标签前还没有空白问题,请检查文件编码。如果您的文件保存为UTF-8,请确保它们保存为UTF-8而不包含bom,否则将其重新保存为ANSI。