1

私は決して Web デザイナー/コーダーではありませんが、Web サイトを運営するための一般的な知識は十分にあります。シンプルなポートフォリオサイトです。

ただ、お問い合わせフォームに問題があります。厳密には CSS、HTML、および PHP ですが、テストするために情報 (名前、電子メール、およびメッセージ) を入力すると、それらのフィールドの見出しが記載された電子メールが送信されますが、コンテンツは送信されません。たとえば、電子メールは次のように表示されます。

名前: メール: メッセージ:

情報を入力しても。

私はそれが何か小さくてばかげたエラーだと感じているので、どんな助けも大歓迎です!

HTML

<div id="contact-area">
<form method="post" action="contactengine.php">
<input type="text" name="Name" id="Name" placeholder="Name"/>
<input type="text" name="Email" id="Email" placeholder="Email"/>
</form>
</div>
<div id="contact-area2">
<form method="post" action="contactengine.php">
<textarea name="Message" placeholder="Message" rows="20" cols="20" id="Message"></textarea>
</form>
<div id="submit-button">
<form method="post" action="contactengine.php">
<input type="submit" name="submit" value="SUBMIT" class="submit-button" />
</form>
</div>
</div>

PHP

<?php

$EmailFrom = "contact@brettlair.ca";
$EmailTo = "contact@brettlair.ca";
$Subject = "Contact Form";
$Name = Trim(stripslashes($_POST['Name'])); 
$Email = Trim(stripslashes($_POST['Email'])); 
$Message = Trim(stripslashes($_POST['Message'])); 

// validation
$validationOK=true;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.htm\">";
exit;
}

// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";

// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

// redirect to success page 
if ($success){
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.html\">";
}
else{
print "<meta http-equiv=\"refresh\" content=\"0;URL=index.htm\">";
}
?>
4

2 に答える 2

5

あるフォームにフォーム フィールドがあり、別のフォームに送信ボタンがあります。それらは同じ形式である必要があります。

<form method="post" action="contactengine.php">
<input type="text" name="Name" id="Name" placeholder="Name"/>
<input type="text" name="Email" id="Email" placeholder="Email"/>

</div>
<div id="contact-area2">

<textarea name="Message" placeholder="Message" rows="20" cols="20" id="Message"></textarea>

<div id="submit-button">

<input type="submit" name="submit" value="SUBMIT" class="submit-button" />
</form>
于 2013-06-12T23:53:38.463 に答える
0
$Name = Trim(stripslashes($_POST['Name'])); 

Trim機能はありませんtrim。(小文字) にする必要があります。

于 2013-06-12T23:57:14.910 に答える