PHPの組み込みmail()関数を使用して電子メールを送信すると、少量のHTMLと非常に限られたCSS 2つのテーブルとスタイリングのための頭の中にCSSが少しあります)、サーバーはとてもゆっくりとしているようです(管理者が頻繁にメールを送信するページ)。PHPメールを使用した場合の影響
私の質問はこれです; mail()はサーバーに高い負荷をかけますか(それが正しいかどうかわかりません)、または私が使用しているサーバーがごみですか?
私はこの種の事のためにhttp://pear.php.net/package/Mailのようなプロジェクトを検討する価値がありますか?
EDIT:
ここでは、問題のコードです:
$query = "SELECT email FROM $a_table WHERE id='$Id'";
$result = mysql_query($query) or die("Query failed: ".mysql_error());
$mail_to = mysql_fetch_row($result);
$mail_to = $mail_to[0];
// multiple recipients
$to = $mail_to;
// subject
$subject = 'notification';
// message
$message = '<html>
<head>
<title>title goes here</title>
<style type="text/css">
table { border: 1px solid #000;}
table tr th { background-color: #d8d8d8; border-bottom: 1px solid #000}
table tr th, table tr td { padding: 4px; text-align: center; }
</style>
</head>
<body>
<h1>header goes here</h1>
<table cellspacing="0">
<tr>
<th>th1</th><td>'.$var.'</td>
</tr>
<tr>
<th>th2</th><td>'.$var2.'</td>
</tr>
<tr>
<th>th3</th><td>'.$var3.'</td>
</tr>
</table>
<p> </p>
<table cellspacing="0">
<tr>
<th colspan="13">Key</th>
</tr>
<tr>
<th>G</th>
<th>I</th>
<th>L</th>
<th>M</th>
<th>N</th>
<th>O</th>
<th>Q</th>
<th>R</th>
<th>S</th>
<th>V</th>
<th>W</th>
<th>C</th>
<th>?</th>
</tr>
<tr>
<td>G</td>
<td>I</td>
<td>L</td>
<td>M</td>
<td>U</td>
<td>O</td>
<td>Q</td>
<td>R</td>
<td>S</td>
<td>V</td>
<td>W</td>
<td>C</td>
<td>R</td>
</tr>
</table>
</body>
</html>
// To send HTML mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Additional headers
$headers .= 'From: admin<[email protected]>' . "\r\n"; // might need to get rid of this soon
// Mail it
mail($to, $subject, $message, $headers);
}
コードを投稿できますか? mail()がページをタイムアウトさせるのは一般的ではない、それはおそらく他のものだ – Swadq
このようなものについては、誰かのうまくテストされた作業を使うのが常に価値がある。私は[SwiftMailer](http://swiftmailer.org/)を使用しています。多くの人が[PHPMailer](http://phpmailer.worxware.com/)を推薦しているのを見て、私はいくつかの人がPEAR :: Mailを悪用しているのを見ました私はコメントするのに十分使用していない。電子メールを送信するには数秒(おそらく1秒未満)かかるので、リクエストがタイムアウトしている場合は、ここで何か他のことが起こっています。設定が不十分なサーバーであっても、システムリソースの面でこれに問題があってはいけません。ネットワークに問題がある可能性があります。 – DaveRandom
PHPメーラーについて:http://phpmailer.worxware.com –