当前位置: 首页 > 知识库问答 >
问题:

PHP编译器没有给出错误消息?

上官联
2023-03-14

即时创建一个小电子邮件脚本与PHPMailer SMTP身份验证。我现在试着用错误的密码发送一封电子邮件——但它仍然会给成功带来“真实”的回报...有人知道吗?'

以下是我用来调用sendmail的函数:

$erfolg_email = true;
    foreach($empfaenger as $value)
    {

        $response = $this->sendMail($smtp, $value, $content, $files);
        if($response != true)
        {

            return $response;
            $erfolg_email = false;

        }

    }

这是我的PHPMailer函数

function sendMail($smtp, $empfaenger, $content, $attachements)
{

    $mail = new PHPMailer(true);

    try{

        $mail->IsSMTP();    
        $mail->Host = $smtp['SMTP'];
        $mail->SMTPAuth = true;     // turn on SMTP authentication
        $mail->Port = $smtp['Port'];
        $mail->SMTPSecure = 'tls';
        if($smtp['Domain'] != '')
        {

            $username = $smtp['Username']."@".$smtp['Domain'];

        }else
        {

            $username = $smtp['Username'];

        }
        $mail->Username = $username;  // SMTP username
        $mail->Password = $smtp['Password']; // SMTP password
        $mail->SMTPOptions = array(
            'ssl' => array(
                'verify_peer' => false,
                'verify_peer_name' => false,
                'allow_self_signed' => true
            )
        );
        $mail->From = $smtp['Email_Address'];
        $mail->AddAddress($empfaenger);
        $mail->WordWrap = 50;
        $mail->isHTML(true);

        foreach($attachements as $value)
        {

            $mail->AddAttachment($value);

        }
        $mail->Subject = "Mahnung";
        $mail->Body = $content;
        $mail->AltBody = "Sie haben offene Posten";

        if($mail->Send() == true)
        {

            echo $mail->ErrorInfo;
            return $mail->ErrorInfo;

        }else
        {

            return $mail->ErrorInfo;

        }

    } catch (phpmailerException $e) {

        return $e->errorMessage(); //Pretty error messages from PHPMailer

    } catch (Exception $e) {

        return $e->getMessage(); //Boring error messages from anything else!

    }
}

$smtp包含一个数组,其中包含所有SMTP信息、电子邮件地址、签名、Smtp服务器、端口、用户名、密码和SSL用法...

我敢肯定,我使用了错误的用户名和密码,因为没有电子邮件通过-但我仍然得到“真”作为发送邮件功能的结果。。。它甚至没有重复这个错误。当发送成功时,我甚至尝试发出错误消息。。。但什么都没有

感谢您的帮助!

干杯

共有2个答案

葛磊
2023-03-14

在php mailer函数文件中,您可以在最后添加以下代码

$send = $mail->Send(); //Send the mails
    if($send){
        echo '<center><h3>Mail sent successfully</h3></center>';
    }
    else{
        echo '<center><h3>Mail error: </h3></center>'.$mail->ErrorInfo;
    }
}
都飞跃
2023-03-14

函数sendMail不返回布尔值。因为它是一个数组/对象,所以在这种情况下,结果总是true。尝试在if语句之前打印$response,您将看到错误。

 类似资料:
  • 问题内容: 每当我在cmd中通过JAVAC命令编译以上代码时,它仅给出“第一个错误”即不给出第二个“错误”。在Java语言中,部分编译器和部分解释器以及Java首次编译发生,因此编译器应列出所有错误,但它仅给我一个错误。为什么会发生?我不明白,所以请帮我解决这个问题。 我想我现在很清楚我的问题意味着编译器完全可以工作… 为此,我创建了一个简单的示例,它将帮助您了解Java编译器的工作原理。 问题答

  • 请帮帮我!我找不到此问题的任何解决方案 “/”应用程序中的服务器错误。< br >编译错误< br >描述:编译服务此请求所需的资源时出错。请查看以下特定错误详细信息,并适当修改您的源代码。 编译器错误消息: 编译器失败,错误代码为-2146232576。 显示详细的编译器输出: C:\Windows\System32\inetsrv 版本信息: 微软 .NET 框架版本:4.0.30319;AS

  • 所以当我不使用我的maven实现时,我在编译我的应用程序时遇到了麻烦。它将编译没有任何麻烦与maven-gwt-plugin。 我收到的错误表示生成器无法获取其请求的类信息: 显然,该类存在并在maven实现中工作。我不明白为什么在使用eclipse“Java应用程序”运行配置进行标准构建时它不起作用。以下是我的跑步配置的设置: 有人知道这是怎么回事吗?

  • 我的任务是创建一个名为MyRectangle的类来表示矩形。 所需的数据字段是宽度、高度和颜色。宽度和高度使用双数据类型,颜色使用字符串。然后编写一个程序来测试MyRectangle类。在客户端程序中,创建两个MyRectangle对象。为两个对象中的每一个指定宽度和高度。将第一个对象指定为红色,将第二个对象指定为黄色。显示两个对象的所有属性,包括其面积。 我已经写了所有的东西,没有错误,但是无论