0

メール mail@example.com でメールを受信して​​いません。以下は、フォーム コードと send-mail.php コードです。すべてがうまく機能しているように見えますが、メールを受信して​​いません。サーバーとしてlocalhostを使用しています。

お問い合わせフォーム:

<form id="contactForm" action="#" method="post">
<p>Email us by filling in the form below. Make sure you fill in the message and all fields.</p>
<fieldset>
<div>
<input name="name"  id="name" type="text" class="form-poshytip" title="Enter your name" />
<label>Name</label>
</div>
<div>

<input name="web"  id="web" type="text" class="form-poshytip" title="Enter your surname" />
                                     <label>Surname</label>
</div>
<div>
<input name="email"  id="email" type="text" class="form-poshytip" title="Enter your email address" />
                                    <label>Email</label>
</div>

<div>
<textarea  name="comments"  id="comments" rows="5" cols="20" class="form-poshytip" title="Enter your comments"></textarea>
</div>

<!-- send mail configuration -->
<input type="hidden" value="mail@example.com" name="to" id="to" />
<input type="hidden" value="Enter the subject here" name="subject" id="subject" />
<input type="hidden" value="send-mail.php" name="sendMailUrl" id="sendMailUrl" />
<!-- ENDS send mail configuration -->

<p><input type="button" value="Send" name="submit" id="submit" /> <span id="error" class="warning">Message</span></p>
</fieldset>

</form>
<p id="sent-form-msg" class="success">Form data sent. Thanks for your feedback.</p>
<!-- ENDS form -->

ここにsend-mail.phpがあります

<?php
//vars
$subject = $_POST['subject'];
$to = explode(',', $_POST['to'] );

$from = $_POST['mail@example.com'];

//data
$msg = "NAME: "  .$_POST['name']    ."<br>\n";
$msg .= "EMAIL: "  .$_POST['email']    ."<br>\n";
$msg .= "WEBSITE: "  .$_POST['web']    ."<br>\n";
$msg .= "COMMENTS: "  .$_POST['comments']    ."<br>\n";

//Headers
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=UTF-8\r\n";
$headers .= "From: <".$from. ">" ;


//send for each mail
foreach($to as $mail){
mail($mail, $subject, $msg, $headers);
}

?>
4

3 に答える 3

0

私はいくつかの提案があります。「to」アドレスをフォームに隠して保管している場合、sendmail 関数と $from で直接保管しようとしないのはなぜですか。

<?php
$to="kurtfarrugia92@gmail.com";
$from =$_POST['field_name']; 
// not the mail id because i didn't see any field with name as "kurtfarrugia92@gmail.com"
?>
于 2013-04-11T05:50:11.747 に答える
0

You cannot use this function to send mail from localhost. I am not sure but you should try PHP mailer for this task.

于 2013-04-11T06:05:26.523 に答える