Php表单不在不同服务器上发送电子邮件

时间:2013-09-09 21:18:46

标签: php html forms

我正在使用联系表格,从现在开始工作。点击“发送”后我确认了消息,没有任何反应。网站管理员邮件"test@gmail.com"就是一个例子。

这段代码:

    <?php
    ini_set('default_charset', 'UTF-8'); 
    /* Subject and Email Variables */

$emailSubject = 'Wiadomosc z Formularza Kontaktowego ze strony WWW';
$webMaster = 'test@gmail.com';
$headers .= "Content-type: text/html; charset=UTF-8";
    /* Gathering Data Variables*/

    $name = $_POST['name'];
    $company = $_POST['company'];
    $phone = $_POST['phone'];
    $email = $_POST['email'];
    $topic = $_POST['topic'];
    $text = $_POST['text'];

    if (empty($_POST['email']))
    {
    echo 'error';
    exit;
    }
    if (empty($_POST['phone']))
    {
    echo 'error';
    exit;
    }
    if (empty($_POST['name']))
    {
    echo 'error';
    exit;
    }
    if (empty($_POST['text']))
    {
    echo 'error';
    exit;
    }

$body = <<<EOD

    Imię i Nazwisko: $name <br />
    Organizacja/Firma: $company <br />
    Numer telefonu: $phone <br />
    Email: $email <br />
    Temat: $topic <br />
    Wiadomość: $text <br />
    EOD;

$headers = "From: $email\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$success = mail($webMaster, $emailSubject, $body, $headers);

/* Results rendered as HTML */

$theResults = <<<EOD
OK




   EOD;
   echo $theResults;
   ?>

是服务器吗?或者有些东西让我失望?

1 个答案:

答案 0 :(得分:0)

您应该检查mail()函数返回的内容,打印出$success

var_dump($success);
die;

看看它是真还是假,如果它是真的并且你没有收到电子邮件,那么可能是服务器上有问题,那么这是一个不同的问题,需要在你使用的服务器上进行故障排除。