0

最近、別のトピックで助けてもらい、コンタクトフォームからメールを受信できましたが、メッセージテキストに保存されているすべての情報が除外され、「Apache」から送信されました。これが起こっている理由はありますか?

<?php
if(isset($_POST['submit'])){
$name = $_POST['name'];
$company = $_POST['company'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "______@gmail.com";
$subject = "Contact Form";
$mailheader = "From: $email \r\n";

$to ='______@gmail.com';
$send_contact=mail($to,$subject,$message,$header);

// Check, if message sent to your email 
// display message "We've received your information, thank you"

if($send_contact){
echo "We've received your contact information, thank you";
}
else {
echo "Error, please try again";
} }
?>


<form action = "../mail.php"method="POST">
<p>Name</p> <input type="text" name="name">
<p>Company</p> <input type="text" name="company">
<p>Email</p> <input type="text" name="email">
<p>Phone</p> <input type="text" name="phone">
<p>Message</p><textarea name="message" rows="4" cols="25"></textarea><br />
<input type="submit" value="Submit" name="submit">
</form>
4

2 に答える 2

0

これを編集

send_contact=mail($to,$subject,$message,$header);

send_contact=mail($to,$subject,$message,$mailheader);

このように送信することもできます

send_contact = main($to,$subject,$formcontact,$mailheader);

必要に応じて...そして

PHP でメールを送信することは、1 ステップのプロセスではありません。mail() は true/false を返しますが、true を返してもメッセージが送信されるわけではありません。mail() が行うことは、メッセージをキューに追加することだけです (sendmail または php.ini で設定したものを使用)

メッセージがphpで送信されたかどうかを確認する信頼できる方法はありません。メール サーバーのログを確認する必要があります。

于 2013-02-21T06:05:57.543 に答える
0

使用した変数名が間違っています。

メール呼び出しの最後のパラメータを $header から $mailHeader に変更してください

$send_contact=mail($to,$subject,$message,$header);

$send_contact=mail($to,$subject,$message,$mailHeader);

送信する前に、必要な情報をすべて追加してください。以下のコードを使用して、

$name = $_POST['name'];
$company = $_POST['company'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$messageContent = $name."\n".$company."\n".$email."\n".$phone."\n".$message."\n";

$send_contact=mail($to,$subject,$messageContent,$mailHeader);
于 2013-02-21T06:06:45.207 に答える