0

私はphpフォームをコーディングしていて、非常に軽量で短いコードが必要でした。キャプチャは正常に機能し、検証も同様に機能します。私には2つの問題があります:テストしたとき、私が受け取る電子メールは1)電子メールの件名として人の名前を示しています2)メッセージフィールドに書かれたテキストは送信されません

ご意見をお聞かせください。

これはphpです:

<?php
session_start();

if(isset($_POST['submit'])) {
$email = $_REQUEST['email'] ; 
$name = $_REQUEST['name'] ; 
$telephone = $_REQUEST['telephone'] ;
if(!empty($_POST['name']) && !empty($_POST['email']) && !empty($_POST['telephone'])    &&!empty($_POST['message']) && !empty($_POST['code'])) { 
if($_POST['code'] == $_SESSION['rand_code']) {
if
(filter_var($email, FILTER_VALIDATE_EMAIL)) {
                                                   mail("youremail@something.something", $name, $telephone, "From:" . $email);
                                               $accept = "Thank you for contacting me.";
}
                                               else if (strpos($email, '@') !== false) {
                                               $error = "Please verify your email";
}   
else {
$error = "Please verify your email";
}                
} 
else {
$error = "Please verify that you typed in the correct code.";
}
} 
else {
$error = "Fields with * are required";
}               
}
?>

ここにHTMLがあります:

<body>
<?php if(!empty($error)) echo '<div class="error">'.$error.'</div>'; ?>
<?php if(!empty($accept)) echo '<div class="accept">'.$accept.'</div>'; ?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post"   enctype="multipart/form-data">
<p><input type="text" name="name" /> Name *</p>
<p><input type="text" name="email" /> Email *</p>
<p><input type="text" name="telephone" /> Contact Number *</p>
<p><textarea name="message"></textarea>Message</p>
<img src="captcha.php"/>
<p><input type="text" name="code" /> Are you human?</p>
<p><input type="submit" name="submit" value="Send" class="button" /></p>
</form>

4

1 に答える 1

0

問題はメール機能にあります。件名の代わりに名前を渡し、メッセージの代わりに電話番号を渡しています。これは適切な形式です。

メール ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

于 2012-10-06T16:28:06.067 に答える