【问题标题】:Simple php contact form issue, not sending简单的php联系表问题,不发送
【发布时间】:2012-12-29 21:16:56
【问题描述】:

为客户建立网站但联系表格无法正常工作,我为客户设置了一个电子邮件帐户“contact@eunicedcolvin.co.uk”,但它似乎没有完成发送它以加载成功消息,这里是下面的代码。我对 PHP 相当陌生,但无法弄清楚问题所在。

<div id="contact-form" style="background: none;">

            <div id="contact-header"></div>

                <div id="contact-middle">

            <?php 
            if ($_POST["email"]<>'') {  
                $ToEmail = 'contact@eunicedcolvin.co.uk'; 
                $EmailSubject = 'Website Contact'; 
                $mailheader = "From: ".$_POST["email"]."\r\n"; 
                $mailheader .= "Reply-To: ".$_POST["email"]."\r\n"; 
                $mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
                $MESSAGE_BODY = "Name: ".$_POST["name"]."<br>"; 
                $MESSAGE_BODY .= "Email: ".$_POST["email"]."<br>"; 
                $MESSAGE_BODY .= "Comment: ".n12br($_POST["comment"])."<br>"; 
                mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader) or die ("Failure"); 
                ?> 
                <div id="contact-success">
                <span style="font-size:16px; font-weight:bold; ">Thanks! Your message was sent</span><br>
                I will get back to you as soon as I can
                </div>
                </div>
        <?php 
        } else { 
        ?>       
      <form method="POST">
        <table width="360" border="0" cellspacing="8" cellpadding="0" style="margin-left: 11px;">
          <tbody><tr>
            <td class="contact-label">Your name:<br></td>
            <td class="contact-text-border"><input name="name" type="text" id="name" size="32" class="contact-name"></td>
            </tr>
          <tr>
            <td class="contact-label">Your Email address:</td>
            <td class="contact-text-border"><input name="email" type="text" id="email" size="32" class="contact-name"></td>
            </tr>
          <tr>
            <td class="contact-label">Comment:</td>
            <td class="contact-text-border" style="padding: 2px 2px;"><textarea name="comment" cols="45" rows="6" id="comment" class="contact-comment"></textarea></td>
            </tr>
          <tr>
            <td height="33" class="contact-label">&nbsp;</td>
            <td align="left" valign="top">
            <input type="submit" name="Submit" class="submit" value="."></td>
            </tr>
          </tbody></table>
        </form> 
        <?php 
        };      
        ?>

        </div>
        <div id="contact-bottom"></div>
            </div>

        </div>

如果您想现场观看它的样本,请点击此处:http://www.eunicedcolvin.co.uk/contact.html

link to website

问题是,最初它被设置为发布到我的个人电子邮件中进行测试,然后当我将它交换时它拒绝工作!我已经为此绞尽脑汁了一段时间:S

【问题讨论】:

  • 所以当您将 $ToEmail 变量更改为您的个人电子邮件地址时,您的脚本可以工作?

标签: php forms contact


【解决方案1】:

您的电子邮件发送服务器很可能没有正确设置。

如果它实际上正在发送,那么它可能会被垃圾邮件过滤。

此外,您不应将发件人地址设置为表单中提交的地址,因为您的服务器将无权从该域发送。

【讨论】:

  • hmm 已与我的网络托管公司核实,他们声称网络服务器正在运行(他们说有问题但现在已解决),但仍然无法正常工作:(
  • @user1937082 仍然,当您从未经授权的地址发送时,它可能会被过滤掉垃圾邮件。
【解决方案2】:

试试你的服务器是否配置邮件:

if(@mail($emailRecipient, $subject, $message, $headers))
{
  echo "Mail Sent Successfully";
}else{
  echo "Mail Not Sent";
}

使用此代码,仅使用此代码将其上传到简单的 x.php 文件(插入邮件等), 您知道您的服务器是否正常:)...

或者可能被放到接收者的垃圾邮件文件夹中

【讨论】:

    【解决方案3】:

    使用 SMTP。

    不要花时间尝试让邮件正常工作....在我看来这只是浪费时间,而且大多数用它发送的电子邮件最终都在垃圾邮件文件夹中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-06
      • 2016-03-26
      • 1970-01-01
      • 2019-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多