2016-08-02 84 views
-1

我有一個腳本,它將數據發送到mysql數據庫中的一個表,現在我想每次有人添加新數據時都會生成一個電子郵件。它可以工作,但正如你可能知道的那樣,它可以持續將近20-30秒完成並得到迴應。 我讀過exec函數對於在單獨的文件中執行mail()很好,但在我的共享服務器exec被禁用。也禁止這些人:郵件功能,不要等待共享主機負責

symlink,shell_exec,exec,proc_close,proc_open,popen,system,dl,passthru,escapeshellarg,escapeshellcmd,show_source,pcntl_exec 

任何人都可以表明我怎麼能做出這種沒有更多鈔票,直到發送電子郵件攔截網頁?

謝謝!

+0

你應該問你的主機,他們認爲發送郵件應該如何工作。他們可能會比這裏任何人都更有能力提供幫助。 – Jakumi

+0

使用PHPMailer的SMTP到localhost可能會更快。如果向本地郵件服務器(通過「mail()」或SMTP)提交郵件的時間超過了大約0.2秒,那麼您的操作出錯了,或者您的服務器出了問題。 – Synchro

回答

0

郵件功能看起來像這樣。有什麼東西讓它變慢?

$to  = "[email protected]"; 
$subject = "xxxxx"; 
$message = "xxxxxxxxx: \n"; 
$message .= "\n"; 
$message .= " $getuser\n"; 
$message .= "\n"; 
$headers = 'From: [email protected]' . "\r\n" . 
'Reply-To: [email protected]' . "\r\n" . 
'X-Mailer: PHP/' . phpversion(); 

mail($to, $subject, $message, $headerxs);