douchuo9476 2013-12-13 15:40
浏览 99
已采纳

在php中的后台进程发送电子邮件

I want to send a welcome email when a user registers in my app. When a user registers he gets redirected to his profile page. I tried sending email while user creation but the email() takes 7 seconds to send email, and the page waits till then and then redirects the user to profile after 7 sec.

This is not desired. I want to redirect user as soon he registers, and send an email along the process. It takes 7 sec don't know why. i tried it online on godaddy and hostgator account as well as on my localhost.

BTW: i am using PHPMailer to send email.

How can can i make a standalone process which on invoke calls my sendMail.php with email $_POST[] parameters {to, subject, body}.

i though ajax call will do the trick, but as soon as my page redirects from registration to profile, the email script stops. I tried this code:

<script language="JavaScript">
    $.post( "sendMail.php", { to: "$to", subject: "$subject", htmlBody: "$htmlBody", altBody: "$altBody" } );
location.href=profile.html
</script>

Please help, i searched a lot but they work on shell which i am not, and other solutions were unix/linux based. i want to make it work on xampp as well as godaddy linux shared hosting, with NO ssh access.

  • 写回答

3条回答 默认 最新

  • drhe80011 2013-12-13 16:03
    关注

    You could use Mail_Queue, which is a job queue specifically for sending emails, or utilise Zend_Queue [ZF1, ZF2] to write something customised to work with PHPMailer. You might even consider using Gearman.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?