Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML和PHP代码不发送电子邮件_Php_Html - Fatal编程技术网

HTML和PHP代码不发送电子邮件

HTML和PHP代码不发送电子邮件,php,html,Php,Html,我一直在尝试使用PHP发送电子邮件,我发现这段代码适合我的需要,因为它很容易融入我当前网站的代码中。但是,我将整个代码放入一个文件并进行了测试,它不会发送电子邮件 代码: 因为,您正在本地使用它,并且您的邮件服务器未配置: 您可以将Gmail SMTP配置为如下工作方式: // Pear Mail Library require_once "Mail.php"; $from = '<fromaddress@gmail.com>'; $to = '<toaddress@yaho

我一直在尝试使用PHP发送电子邮件,我发现这段代码适合我的需要,因为它很容易融入我当前网站的代码中。但是,我将整个代码放入一个文件并进行了测试,它不会发送电子邮件

代码:


因为,您正在本地使用它,并且您的邮件服务器未配置:

您可以将Gmail SMTP配置为如下工作方式:

// Pear Mail Library
require_once "Mail.php";

$from = '<fromaddress@gmail.com>';
$to = '<toaddress@yahoo.com>';
$subject = 'Hi!';
$body = "Hi,\n\nHow are you?";

$headers = array(
    'From' => $from,
    'To' => $to,
    'Subject' => $subject
);

$smtp = Mail::factory('smtp', array(
        'host' => 'ssl://smtp.gmail.com',
        'port' => '465',
        'auth' => true,
        'username' => 'johndoe@gmail.com',
        'password' => 'passwordxxx'
    ));

$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
    echo('<p>' . $mail->getMessage() . '</p>');
} else {
    echo('<p>Message successfully sent!</p>');
}
//Pear邮件库
需要一次“Mail.php”;
$from='';
$to='';
$subject='Hi!';
$body=“您好,\n\n您是什么人?”;
$headers=数组(
'From'=>$From,
'至'=>$至,
“主题”=>$Subject
);
$smtp=Mail::工厂('smtp',数组(
'主机'=>'ssl://smtp.gmail.com',
“端口”=>“465”,
“auth”=>正确,
'用户名'=>'johndoe@gmail.com',
'密码'=>'密码XXX'
));
$mail=$smtp->send($to、$headers、$body);
if(PEAR::isError($mail)){
echo(“”.$mail->getMessage()。

”); }否则{ 回显(“消息已成功发送!

”); }
有时,您的发件人电子邮件收件人电子邮件应该是在您网站的邮件服务器或cPanel上配置的电子邮件。 由于安全原因,大多数托管服务提供商不允许这样做。
将其更改为在您网站的邮件服务器上配置的电子邮件地址,然后应该可以使用。

问题不在于代码,但如果没有“SMTP”服务器,您将无法发送电子邮件

目前我正在本地运行一切,但还没有启动和托管。有什么方法可以让它在不上线的情况下工作吗?@joey942客户端?你是说本地托管?除非你有一个本地邮件服务器,否则这是行不通的。没有邮件服务器你怎么能发送邮件呢?是的,还有其他选择,比如你可以在你的PHP中配置Gmail SMTP!本地主持的,是的,哇。好的,谢谢你提供的信息。你是在使用XAMPP,还是其他的本地服务器?很可能您还没有本地邮件服务器(如sendmail)设置。这些本地环境几乎不包括邮件服务器,因此需要单独设置。@BrianSchroeter我为gmail启用了POP,但仍然不知道我在用这些邮件服务器做什么。我很高兴为您指出正确的方向。您使用什么软件来管理本地服务器?常见的平台有XAMPP和WAMP。但可能有很多不同的事情我甚至认为我还没有本地服务器。。。(抱歉,如果我让你失望了哈哈,对PHP和邮件都是新手)啊,好吧!我想我们已经找到了问题的根源。如果您的本地计算机上有HTML文件,那么像Chrome这样的简单web浏览器可以打开这些文件。然而,PHP是一种服务器端脚本或编程语言。PHP需要一个web服务器,如Apache,以便处理代码中的命令。如果没有web服务器,PHP根本无法做任何事情。您可以使用XAMPP等自由软件在自己的计算机上设置服务器。
// Pear Mail Library
require_once "Mail.php";

$from = '<fromaddress@gmail.com>';
$to = '<toaddress@yahoo.com>';
$subject = 'Hi!';
$body = "Hi,\n\nHow are you?";

$headers = array(
    'From' => $from,
    'To' => $to,
    'Subject' => $subject
);

$smtp = Mail::factory('smtp', array(
        'host' => 'ssl://smtp.gmail.com',
        'port' => '465',
        'auth' => true,
        'username' => 'johndoe@gmail.com',
        'password' => 'passwordxxx'
    ));

$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
    echo('<p>' . $mail->getMessage() . '</p>');
} else {
    echo('<p>Message successfully sent!</p>');
}