用Qt&发送邮件php.exe的

时间:2011-10-13 13:03:51

标签: php c++ qt smtp wamp

我对我正在为我的工作创建的程序有问题。这是一个用Qt开发的C ++程序。

我想发送一封电子邮件,所以我用C ++调用php:

QStringList l;
QString    msg(mail.c_str());
l << "C: //sql.php"; //my function which send an email
l << msg; // my email
this->_php->start("C:\\Program Files\\wamp\\bin\\php\\php5.3.8\\php.exe", l);

此代码正常工作,php没有写错误。所以在php中查看我的其他功能(myemail@xxx.fr不是我真正的地址:p,我已经隐藏它来询问我的问题)

    $headers = 'From: "xxx"<noreply@xxx.fr>' . "\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"' . "\n";
$headers .='Content-Transfer-Encoding: 8bit' . "\n";

$obj = "my_object";
$msg = "<html><head></head><body>awdadwawdawd</body></html>";
if (mail("myemail@xxx.fr", $obj, $msg, $headers) == true)
    echo "ok";
else
    echo "fail";

所以这是有效的,因为“ok”是在我的C ++程序上打印的。 但是这封电子邮件没有到达我的电子邮箱。 当我尝试在wamp(使用localhost ....)中启动php的功能时,它正在工作,因为我收到了这封邮件。但是当我尝试使用我的C ++程序和php.exe时,电子邮件没有到达。

有人有想法或建议来解决我的问题吗?

1 个答案:

答案 0 :(得分:0)

好像是配置问题。检查您的php.ini和特别是SMTP设置。

php -i | findstr SMTP //check SMTP server
php -i | findstr "Configuration File" //to check php.ini location