-3

首先,我想说这是我第一次在阅读之外使用 PHP。

我只是想创建一个简单的联系表格来收集信息并向我发送包含信息的电子邮件。目前我的联系页面已关闭,任何帮助都可以将其恢复。

这是我的代码:

<?php

if(isset($_POST['Submit'])) {
if(!empty($_POST['CompanyName'])){
    if(!empty($_POST['Email']){
        $CompanyName = $_POST['CompanyName'];
        $PhoneNumber = $_POST['PhoneNumber'];
        $Email = $_POST['Email'];
        $IndustryType = $_POST['IndustryType'];
        $Website = $_POST['Website'];
        $Other = $_POST['Other'];
        $Comments =$_POST['comments'];
        $formcontent ="From: $CompanyName \n Message: \n Point of Contact: $NameInput \n Email: $Email \n Industry: $IndustryType $Other \n Website: $Website \n  Comments: $Comments";
        $recipient = "keeano@doodleinc.co"; 
        $subject = "Website Contact\ $IndustryType";
        $mailHeader = "From $Email \r\n";
        echo '<p class="collapse">Thank you for contacting <font color="#709900">Doodle Inc.</font>, someone will contact you within 48 hours.</p>';
        mail($Email, $subject, $formcontent);

    }
    else {
        echo 'Please Check required fields with an <font color="#FF0000">*      </font>.\n If you are exsperiancing any technical issues or have not heard back from us   please contact us at <a href="">Techsupport@doodleinc.co</a>';
    }
}
}?>

    <div class="article">
      <h2><span>send us an</span> email ...</h2><div class="clr"></div>
    <form name="contact_form" method="post" action="mail.php" onSubmit="return    evalid()">
<table border="0">
<tbody class="Form">
<tr>
<td>
<label for="NameInput">Your Name:<font color="#FF0000">*</font></label>
<input id="NameInput" name="NameInput"/>
 </td>
 </tr>
 <tr>
 <td>
 <label for="CompanyName">Your Company:<font color="#FF0000">*</font></label>
 <input id="CompanyName" name="CompanyName"/>
 </td>
 </tr>
 <tr>
<td>
<label id="PhoneNumber" name="PhoneNumber">Phone: </label>
 <input id="PhoneNumber" name="PhoneNumber"/>
 </td>
 </tr>
 <tr>
 <td>
 <label id="Email" name="Email">Email:<font color="#FF0000">*</font></label>
 <input id="Email" name="Email" type="email"/>
 </td>
 </tr>
 <tr>
 <td>
 <label for="Website">Website: </label>
 <input id="Website" name="Website"/>
 </td>
 </tr>
 <tr>
 <td>
 <label for="IndustryType" name="IndustryType">Industrey: </label>
 <Select>
  .....
  <option>Other</option>
  </select>
  </td>
  <?php
   if($IndustryType == "Other")
    echo '<div id="Other">
  <td>
 <label for="=Other" class="collapse">Other: </label><input id="Other" name="Other"       class="collapse"/>
  </div>
  <br/>
 <br/>
 </td>
   ?>
 </tr>
  <br/>
<br/>
 <br/>
 <br/>
 <tr>
 <th><p><b>What interests you, broadly speaking?</b></p></th>
 </tr>
 <tr><td>
 <input type="checkbox">Web Design/Development</input>
 </td></tr>
 <tr><td>
 <input type="checkbox">Social Media</input>
 </td></tr>
 <tr><td>
 <input type="checkbox">Mobile Presence</input>
 </td></tr>
 <tr><td>
 <input type="checkbox">Online Advertising</input>
 </td></tr>
 <tr><td>
 <input type="checkbox">Search Engine Optamization</input>
 </td></tr>
 <tr><td>
 <input type="checkbox">eCommerce</input>
 </td></td>
 <tr>
 <th><div class="spacer"></div></th>
 </tr>
 <tr><td>
 <label for="comments"><b>Your Ideas to Life? (How can we help you?)</b></label><br/>
 <textarea id="comments" name="comments" style="margin: 2px; height: 137px; width:  437px;"></textarea></td></tr><br/>
 <tr>
 <td><input type="button" name="Submit" value="Submit" align="middle" /></td>
 </tr>
 </tbody>
 </table>
 </form>

我尝试将电子邮件功能放在一个名为 mail.php 的单独文件中,但这不起作用,所以我将它内联到 HTML 中,页面加载失败。

我也未能成功让 XAMPP 在本地工作。

我知道它的某些东西甚至可能很小,但我希望弄清楚它是什么并在此过程中学习。您喜欢帮助我的任何文档或网站也会很棒。

任何帮助表示赞赏!

4

3 回答 3

1

使用库 phpmailer 发送电子邮件。你可以找到一些关于如何使用它的教程

于 2013-05-29T00:37:04.593 回答
1

您需要在您的php.ini。如果您不知道将 SMTP 设置为什么,请在 Google 上搜索您的电子邮件运营商的 SMTP。还要设置端口。

您的 SMTP 和端口应根据您的电子邮件运营商设置。因此,如果您使用Gmail,请像这样设置这些设置:

SMTP = smtp.gmail.com
smtp_port = 25

您的表单的 action 属性设置为action="mail.php。确保您的代码在该文件中。最后,重启apache。如果您仍然收到错误,请尝试以下操作:

$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$headers .= 'From: ' . $youremail. "\r\n";
mail($Email, $subject, $formcontent);

注意$youremail变量是您使用的电子邮件地址和您为其设置 SMTP 设置的电子邮件地址。

最后步骤到这里下载 sendmail 包并将其解压缩到您的 xampp 根目录中。编辑这些行:

smtp_server=smtp.gmail.com
smtp_port=25
error_logfile=error.log
debug_logfile=debug.log
auth_username=yourname@gmail.com
auth_password=gmailpassword
force_sender=yourname@gmail.com

接下来再次打开 xampp php.ini 文件并编辑sendmail_path. 确保它没有被评论。

sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

重启阿帕奇。

于 2013-05-29T00:37:58.507 回答
0

您的代码返回此错误:

Parse error: syntax error, unexpected '{' in /var/www/crm.demotores.6.5.11/site/test.php on line 5

你应该改变你的 php.ini -display_errors = On看看你的脚本发生了什么。

此行中遗漏了“)”。修复后,你有:

Parse error: syntax error, unexpected ''<div id="Other">' (T_ENCAPSED_AND_WHITESPACE) in /var/www/crm.demotores.6.5.11/site/test.php on line 72
于 2013-05-29T00:40:50.967 回答