我正在使用php邮件功能。
<?php
if (isset($_REQUEST['submit']))
//if "email" is filled out, send email
{
//send email
$text=$_REQUEST['text'];
$enquiry=$_REQUEST['mail-subject'];
$email=$_REQUEST['email'];
$departure = $_REQUEST['departure'];
$subject=$_REQUEST['subject'];
$mmimessage=$_REQUEST['message'];
$message = '<html><body>';
$message.='name:'.$text."<br/>".'Email:'.$email."<br/>".'Department:'.$departure."<br/>".'Subject:'.$subject."<br/>".'Message:'.$mmimessage."<br/>".$_REQUEST['mmimessage'];
$message .= '</body></html>';
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$check= mail("ndhivyamani@gmail.com",$text,$message,$headers);
}
?>
<form action="" method="POST" name="contact-us" id="contact-us">
<div class="col-md-6 margin-bottom-40">
<input type="text" placeholder="Name*" name="text" id="text" class="form-control" required>
</div>
<div class="col-md-6 margin-bottom-40">
<input type="text" placeholder="Email *" name="email" id="email" class="form-control" required>
</div>
<div class="col-md-6 margin-bottom-40">
<input type="text" placeholder="Department*" name="departure" id="departure" class="form-control" required>
</div>
<div class="col-md-6 margin-bottom-40">
<input type="text" placeholder="Subject *" name="subject" id="subject" class="form-control" required>
</div>
<div class="col-md-12 margin-bottom-40">
<textarea placeholder="Tell us more about you and how MMI can assist you in your export/import needs" rows="8" class="form-control" name="message" id="message" > </textarea>
</div>
<div class="col-md-12 margin-bottom-40" style="text-align:center">
<input type="submit" class="btn primary" value="Submit" id="submit" name="submit">
</div>
</form>
此邮件功能在Windows服务器中不起作用。它显示如下错误
警告:mail()[function.mail]:无法连接到mailserver “localhost”端口25,验证您的“SMTP”和“smtp_port”设置 php.ini或使用ini_set() 第324行的D:\ HostingSpace \ mmiexim.com \ httpdocs \ index.php
答案 0 :(得分:0)
Windows机器无法自行发送电子邮件:虽然许多Linux发行版附带了一个可以发送邮件的程序(通常称为“sendmail”),Windows却没有,这意味着Windows上的PHP必须与邮件服务器(MTA)通信以发送电子邮件。
您应该按照错误消息说明并配置邮件服务器。您可以尝试自己设置一个,或使用您的ISP,Gmail,或者使用Amazon SES,Mandrill,Sendgrid或Postmark等专用电子邮件发送服务。
请注意,股票邮件功能不支持身份验证。如果您决定使用需要身份验证的邮件服务器(大多数都这样做),则需要使用SwiftMailer(http://swiftmailer.org/)之类的东西。
答案 1 :(得分:0)
您的错误消息明确指出您的php.ini设置中存在发送邮件的错误。请在php.ini文件中正确设置SMTP配置。