0

新しいプロジェクトの時間です... 1日に送信できるメールの数に制限があるサーバーを持っているので、フォームをデータベースにドロップして、1つのメッセージとして1回に1回メールする必要があると思いましたフォームが送信されるたびに新しいメッセージが表示されるのではなく、改行で区切られた単一のメッセージとして表示されます。私の提出フォームとルックアップが機能します。私のwhileステートメントはデータを引き出し、それをエコーすると完全に表示されます。私が抱えている唯一の問題は、配列を mail() 関数に入れようとしたときです。また、毎回内容がないだけで、毎回私にメールを送信します。

私のwhileステートメントは次のとおりです(エコーは残っています):

while ($ctform_row = mysql_fetch_array($ctform_query, MYSQL_ASSOC)) {
echo $ctform_row['name']." - ".$ctform_row['email']." - ".$ctform_row['Phone']." - ".$ctform_row['message']." - ".$ctform_row['date']."<br />";
}

エコーを $message に置き換えようとしたところ、メールにランダムに行が表示されました。私は何を間違っていますか?私のフォームメール機能は次のとおりです。

mail($destination, $subject, $message);

私の主題と目的地がすでに設定されている場所。

4

2 に答える 2

1

あなたのコードを見ないと、あなたの説明から、連結演算子ではなく代入演算子を使用していると思われます。

つまり、あなたはこれをやっています:

$message = $ctform_row['name']." - ".$ctform_row['email']." - ".$ctform_row['Phone']." - ".$ctform_row['message']." - ".$ctform_row['date']."<br />";

そして、あなたはこれをしているはずです:

$message .= $ctform_row['name']." - ".$ctform_row['email']." - ".$ctform_row['Phone']." - ".$ctform_row['message']." - ".$ctform_row['date']."<br />";

注意してください.=

$messagewhile ループに入る前に必ず定義してください ( $message = "";)

于 2012-10-05T21:41:14.397 に答える
0

あなたはそれが毎回あなたにメールを送ると言っていますが、それはあなたにとって問題だと思います. データを収集、送信、およびクリア (?!) するためのすべてのコードを別の PHP ファイルに配置し、サーバーで cron ジョブを作成して、毎日メールを送信する必要があります。

于 2012-10-05T21:44:31.660 に答える