为什么我在通过PHP发送电子邮件时遇到问题?
可能重复:为什么我在通过PHP发送电子邮件时遇到问题?,php,html,email,Php,Html,Email,可能重复: 我对PHP不熟悉,但我开始看到它对于非常简单的事情的价值,我希望您能解释一下为什么下面的代码不起作用。换句话说,我从未收到过电子邮件。第一个代码块是服务器端的PHP代码,第二个代码块是提交给该PHP代码的表单 我目前在Azure云中托管此网站,因此它在Microsoft的服务器上运行,并且我已经验证了PHPV5.3正在运行 PHP代码 表单提交到PHP 名字* 姓* 电子邮件地址* 电话号码 评论* 您不需要调用ini\u集(“sendmail\u from”,“$emai
我对PHP不熟悉,但我开始看到它对于非常简单的事情的价值,我希望您能解释一下为什么下面的代码不起作用。换句话说,我从未收到过电子邮件。第一个代码块是服务器端的PHP代码,第二个代码块是提交给该PHP代码的表单 我目前在Azure云中托管此网站,因此它在Microsoft的服务器上运行,并且我已经验证了PHPV5.3正在运行 PHP代码
表单提交到PHP
名字*
姓*
电子邮件地址*
电话号码
评论*
ini\u集(“sendmail\u from”,“$email\u from”)代码>当您在标题中设置发件人电子邮件地址时
@mail
。除非您使用的是尚未调用的Atmail库,否则这将不起作用。您应该删除@以使用默认的PHP邮件函数首先尝试发送简单的电子邮件。检查你是否得到了它 如下
<?php
$to = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
如果有效,请将内容类型text/html添加到代码中,并选中,
@mail
调用不会打印出任何错误。当您删除“at”标志时会出现什么错误?@imm-从@mail
调用中删除@
不会产生任何错误。执行到成功HTML的页面,该HTML位于PHP部分末尾下方。我是否需要添加另一段代码来获取您要查找的数据?这个问题已经在StackOverflow上被问过好几次了。Microsoft Azure不附带邮件服务器。您需要将PHP配置为使用第三方smtp服务器。示例:您是否能够让mail()发送任何内容?也许您的服务不支持开箱即用,您需要自己在本地设置一些东西,或者使用其他解决方案。@imm-我最后使用语句ini\u set('display\u errors',true)
得到了错误。显然,@John在他的回答中证实了这一点,Azure不支持本地的邮件服务器,所以我必须使用某种变通方法才能让它正常工作。谢谢@mail
不是一个函数<代码>邮件是一个函数,@
是错误抑制操作符。
<form name="contactform" method="post" action="send_form_email.php">
<table width="450px">
<tr>
<td valign="top">
<label for="first_name">First Name *</label>
</td>
<td valign="top">
<input type="text" name="first_name" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="last_name">Last Name *</label>
</td>
<td valign="top">
<input type="text" name="last_name" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="email">Email Address *</label>
</td>
<td valign="top">
<input type="text" name="email" maxlength="80" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="telephone">Telephone Number</label>
</td>
<td valign="top">
<input type="text" name="telephone" maxlength="30" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="comments">Comments *</label>
</td>
<td valign="top">
<textarea name="comments" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center">
<input type="submit" value="Submit" style="float: left;">
</td>
</tr>
</table>
</form>
<?php
$to = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>