我正在使用php版本5.2。该脚本在000webhost中工作,但是当我使用yahoo虚拟主机时,它不起作用

时间:2018-12-06 03:58:52

标签: php phpmailer

有人可以帮我为什么我的脚本不能在yahoo Web主机中运行,但可以在000webhost中运行的原因。我正在使用phpmailer5.2和Phpversion 5.2.12

错误是连接失败。错误#2:stream_socket_client()[function.stream-socket-client]:无法连接到smtp.gmail.com:587(无路由到主机)[/ products / phpmailer / class.smtp.php第304行] 2018-12-06 03:50:16 SMTP错误:无法连接到服务器:主机没有路由(65) SMTP connect()失败。 https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

<?php
$result="";
if (isset($_POST['submit'])) {
require_once ('phpmailer/PHPMailerAutoload.php');
$mail = new PHPMailer;

$mail->isSMTP();
$mail->Host='smtp.gmail.com';
$mail->Port=587;
$mail->SMTPAuth=true;
$mail->SMTPSecure='tls';
$mail->Username='sample@gmail.com';
$mail->Password='';

$mail->setFrom($_POST['email'],$_POST['name']);
$mail->addAddress('');
$mail->addAddress('');
$mail->addAddress('');
$mail->addReplyTo($_POST['email'],$_POST['name']);

$mail->isHTML(true);
$mail->Subject='Form Submission: '.$_POST['subject'];
$mail->Body='<h1 align=center>Name: '.$_POST['name'].'<br>Email: ' .$_POST['email']. '<br>Company: ' .$_POST['company'].'<br>Position: ' .$_POST['position'].'<br>Current System Used: '.$_POST['system']. '<br>Message: ' .$_POST['msg'].'</h1>';

if (!$mail->send()) {

  $result="Something went wrong please try again.";

}
else{

  $result="Thanks ".$_POST['name']." sending your request. ";
}

}

?>

1 个答案:

答案 0 :(得分:0)

该错误已在您的帖子中清除。

您的主机没有“路由”,因此问题是您的网络托管已阻止您连接到gmail服务器。