我在这里是新来的这个论坛和一个小编码的PHP新手。phpMailer只能在本地主机上工作
所以这里是主题,我使用phpMailer发送电子邮件。但它只适用于本地主机。我工作的很好,当我将项目上传到网络主机时,它立即停止正常发送。而我甚至没有改变一条线。
所以这里。
<?php
if(empty($_POST['name']) ||
empty($_POST['email']) ||
empty($_POST['phone']) ||
empty($_POST['message']) ||
!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
{
echo "Nenhum argumento fornecido.";
return false;
}
require 'class.phpmailer.php';
require 'PHPMailerAutoload.php';
$mail = new PHPmailer();
$mail->setLanguage('pt');
$host = 'smtp.live.com';
$username = '[email protected]';
$password = 'mypassword';
$port = 587;
$secure = 'tls';
$from = $username;
$fromName = 'Pedido-'.$_POST['name'];
$mail->isSMTP();
$mail->Host = $host;
$mail->SMTPAuth = true;
$mail->Username = $username;
$mail->Password = $password;
$mail->Port = $port;
$mail->SMTPSecure = $secure;
$mail->From = $from;
$mail->FromName = $fromName;
$mail->addReplyTo($from, $fromName);
$mail->addAddress('[email protected]', $_POST['name']);
$mail->isHTML(true);
$mail->Charset = 'utf-8';
$mail->WordWrap = 70;
$mail->Subject = 'Envios do formulario';
$mail->Body = '<b>Nome:</b> '.$_POST['name'];
$mail->Body .= '<br><b>Responder para:</b> '.$_POST['email'];
$mail->Body .= '<br><b>Telefone:</b> '.$_POST['phone'];
$mail->Body .= '<br><b>Mensagem:</b> <br>'.$_POST['message'];
$mail->AltBody = '';
$send = $mail->Send();
return 0;
?>
它的工作原理perfecly罚款在本地主机上时。
你的服务器是否有邮件服务器?你被允许使用? – ElefantPhace 2014-12-07 04:20:07
什么是输出错误? – 2014-12-07 06:19:55