0

メールが届かない。これは、フィールドだけで、元の問題である NUTS に私を駆り立てています。メール、件名、メッセージ。メールを受信して​​いましたが、メール変数が表示されませんでした。私のサーバーから入ってきました。そのため、受信したメールに返信することはできません。別のフィールドを追加することを考えました。「もう一度メール」と表示されますが、メールを送信していると表示され、受信トレイに何も受信しません。ここでの問題は何ですか?(注: セキュリティ上の理由から、電子メール フィールドは削除されています)

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>testing</title>
<style type="text/css">
body,td,th {
    color: #F7F3F3;
}
body {
    background-color: #050505;
}
</style>
</head>
<body style="text-align: center">
<?php ?>
<br />
<?php 
if (isset($_POST['submit'])){
{
    //excute the code
    $email = $_POST['email'];
    $subject = $_POST['subject'];
    $eg = $_POST['eg'];
    $message = $_POST['message'];

    if (strlen($email) <= 0)
        {
        echo "You need to enter an email";
    }else{
        if (strlen($subject) <= 0)
            {echo "You need to enter a subject";
        }else{
                        if (strlen($message) <= 0)
                    {echo "You need to enter a message";
            }else{
                            if (strlen($eg) <= 0)
                        {echo "Email Again";
                }else{
                    if(filter_var($email, FILTER_VALIDATE_EMAIL) == true){
                    //continue with code
                    mail("random@gmail.com", $subject, $message, $eg,  "From:$email");
                    echo "Your message has been sent";
                    }
                        else
                            {
                        echo "You must fill out the entire form";
                            }
                     }
                }
            }
}
}
}
?>
<br />
<span style="text-align: center">This is the contact form.</span>
<form method="post" action="testing.php">
  <table align="center" style="color: #030303;">
<tr><td>Email: <input type="text" name="email" /></td></tr>
<trd><td>Email Again:<input type="text" name="eg" /></td></tr>
<trd><td>Subject:<input type="text" name="subject" /></td></tr>
<trd><td><label for="textarea">Message:</label>
<textarea name="message" cols="40" rows="15">Type your message here.</textarea></tr><tr>
  <trd><td><input type="submit" name="submit" value="send" /></td></tr>
</table>
</form>
4

2 に答える 2

0

<tr>タグを修正してください。問題が発生する可能性があります

<trd><td>Email Again:<input type="text" name="eg" /></td></tr>
   ^
<trd><td>Subject:<input type="text" name="subject" /></td></tr>
   ^
<trd><td><label for="textarea">Message:</label>
   ^
<textarea name="message" cols="40" rows="15">Type your message here.</textarea></tr><tr>
  <trd><td><input type="submit" name="submit" value="send" /></td></tr>
     ^

適切な方法は

<tr><td>Email Again:<input type="text" name="eg" /></td></tr>
<tr><td>Subject:<input type="text" name="subject" /></td></tr>
<tr><td><label for="textarea">Message:</label>
<textarea name="message" cols="40" rows="15">Type your message here.</textarea></tr><tr>
  <tr><td><input type="submit" name="submit" value="send" /></td></tr>
于 2013-09-27T17:34:50.110 に答える
0

投稿フィールド$_POST['eg']をメール ヘッダーとして渡しています。それは必ず何らかの問題を引き起こします。

mail("random@gmail.com", $subject, $message, $eg,  "From:$email");

する必要があります

mail("random@gmail.com", $subject, $message, "From:$email");

そのパラメーターを削除し$egます。4 番目の位置はヘッダー文字列用です。5番目は追加のパラメーターになる可能性がありますが、それが実際に何を意味するのかを調べたいと思うかもしれません. ここのドキュメントを参照してください:

http://php.net/manual/en/function.mail.php

アップデート:

$header = "Reply-To: username@webhosting400.myserver.net\r\n"; 
$header.= "MIME-Version: 1.0\r\n"; 
$header.= "Content-Type: text/plain; charset=utf-8\r\n"; 
$header.= "X-Priority: 1\r\n"; 

mail("random@gmail.com", $subject, $message, $header);
于 2013-09-27T17:38:17.620 に答える