2012-03-02 41 views
2
<?php 
require("./PHPMailer/class.phpmailer.php"); 

    global $error; 

    $from = $_REQUEST['from']; 
    $from_name = $_REQUEST['from_name']; 
    $subject = $_REQUEST['subject']; 
    $body = $_REQUEST['body']; 
    $is_gmail = $_REQUEST['is_gmail'] =true; 
    $to = $_REQUEST['to']; 
    $to = "[email protected]"; // used for testing only 
    $mail = new PHPMailer(); 
    $mail->IsSMTP(); 
    $mail->SMTPAuth = true; 
    if ($is_gmail) { 
     $mail->SMTPSecure = 'tls'; 
     $mail->Host = 'smtp.ks101.fdsfd.eu'; 
     $mail->Username = '[email protected]'; 
     $mail->Password = "pass"; 
     $mail->SMTPDebug = 1; 
    } else { 
     $mail->Host = SMTPSERVER; 
     $mail->Username = SMTPUSER; 
     $mail->Password = SMTPPWD; 
    }   
    $mail->SetFrom($from, $from_name); 
    $mail->Subject = $subject; 
    $mail->Body = $body; 
    $mail->AddAddress($to); 
    if(!$mail->Send()) { 
     $error = 'Mail error: '.$mail->ErrorInfo; 
     echo(false); 
     return false; 
    } else { 
     $error = 'Message sent!'; 
     echo(true); 
     return true; 
    } 
?> 

我显示以下代码托管提供商,他们告诉我它应该工作。我尝试上传,但没有奏效。有人可以帮我发送邮件在PHP

当我尝试网站应该是(实际上可能是PHP服务器)的实际服务器时,我得到了错误。

<br /> 
<b>Warning</b>: stream_socket_enable_crypto() [<a href='streams.crypto'>streams.crypto</a>]: this stream does not support SSL/crypto in <b>/home/www/web420/html/test/PHPMailer/class.smtp.php</b> on line <b>197</b><br /> 
SMTP -> ERROR: RSET failed: 
<br />Language string failed to load: tls 

当我尝试我的服务器我得到了相同的代码错误上(IIS 7)

<br /> 
<b>Warning</b>: stream_socket_enable_crypto() [<a href='streams.crypto'>streams.crypto</a>]: this stream does not support SSL/crypto in <b>C:\inetpub\vhosts\test.com\subdomains\test\httpdocs\appbounce\PHPMailer\class.smtp.php</b> on line <b>197</b><br /> 

我不知道什么是该网站所使用的服务器。我得到了不同的-2错误。请有人验证,如果他们是我的代码中的问题。我究竟需要做什么。

感谢

+0

邮件();工作吗? http://www.php.net/manual/en/function.mail.php – Michas 2012-03-02 13:54:41

+0

嘿@Michas你能告诉我如何设置密码吗? – user1240424 2012-03-02 14:04:28

+0

如果你很幸运并且在PHP服务器上配置了邮件,它将无需密码。 – Michas 2012-03-02 14:17:10

回答

0

一些快速提示

添加此

$mail->Port = 465; 

改变这种

$mail->SMTPSecure = "ssl"; 

如果两个不行....然后在路由器级身份验证问题托管部分

+0

你是对的。它适用于Gmail,但不适用于我的域帐户。 – user1240424 2012-03-02 14:02:52

+0

联系您的托管服务提供商...这绝对不是一个脚本的问题.... – 2012-03-02 14:06:40

+0

先生,我已经联系他们,花了我2​​天的时间,但他们仍然没有帮助我的代码。他们仍然有许多想法,但没有解决他们客户的问题。 – user1240424 2012-03-02 15:03:32