我如何让这个电子邮件脚本在PHP中工作

时间:2013-10-04 18:54:56

标签: php

我对php很新,我正在尝试使用它从我网站上的表单中收集数据,然后将表单的内容发布到我的电子邮件地址,但我的send.php脚本一直给我错误。

这就是我所拥有的:

$company=$_POST['company'];
$contact=$_POST['contact_person'];
$position=$_POST['position'];
$phone=$_POST['phone'];
$address=$_POST['address'];
$finance=$_POST['finance'];
$items=$_POST['items'];
$kind=$_POST['kind'];
$date=$_POST['date'];

$body="company name:". $company . "<br />Contact person:".$contact."<br />position:"
      .$position."<br />phone:".$phone."<br />address:".$address."<br />finance:".$finance."<br />items:"
      .$items."<br />date:".$date;


$to = "contact@sigmastrat.com"; //your email address
$message = $body ."<br/><hr/><br/>".$content;
$from = $_POST['email'];
$headers = "From:" . $from;
mail($to, $message, $headers);
echo "Mail Sent.";

我一直在第19和22行遇到错误:

$message = $body ."<br/><hr/><br/>".$content;  // L19
mail($to, $message, $headers); // L22

我做错了什么?

错误消息是:

  

注意:未定义的变量:第19行的C:\ wamp \ www \ CPIBootstrap \ send_d.php中的内容

  

警告:mail():无法连接到“localhost”端口25的邮件服务器,验证php.ini中的“SMTP”和“smtp_port”设置,或者使用C:\ wamp \ www \ CPIBootstrap中的ini_set()第22行发送send_d.php

2 个答案:

答案 0 :(得分:0)

您的参数不正确。检查mail()功能。

正确的顺序是:

mail($to, $subject, $message, $additional_headers)

所以,我会尝试:

mail($to, 'My Subject', $message, $headers);

答案 1 :(得分:0)

您的mail()来电不正确。语法是:

mail($to, $subject, $message, $headers);

同样,你使用$content而没有定义它。所以最可能的是你的两个错误 - 不正确的函数调用参数和未定义的变量。