0 レビュー
1 回答
php-お問い合わせフォーム付きのカスタムWordpressページ
Wordpressサイトの連絡フォームを作成しようとしています。参考:クライアントはフォームを静的にすることを望んでいるため、将来フォームを変更する必要はありません。このフォームをオンラインで見つけました。 Wordpressのカスタムページに入れました。また、mail.phpファイルをサーバーに配置します。 [送信]をクリックすると、ホームページ/メインテーマページにハイジャックされ、メッセージが送信されません。なぜこれを修正するのか、オマージュに連れて行ってくれるのかわかりません。
<table width="400" border="0" align="center" cellpadding="3" cellspacing="1">
<tr>
<td><strong>Contact Form </strong></td>
</tr>
</table>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td><form name="form1" method="post" action="mail.php">
<table width="100%" border="0" cellspacing="1" cellpadding="3">
<tr>
<td width="16%">Subject</td>
<td width="2%">:</td>
<td width="82%"><input name="subject" type="text" id="subject" size="50"></td>
</tr>
<tr>
<td>Detail</td>
<td>:</td>
<td><textarea name="detail" cols="50" rows="4" id="detail"></textarea></td>
</tr>
<tr>
<td>Name</td>
<td>:</td>
<td><input name="name" type="text" id="name" size="50"></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="customer_mail" type="text" id="customer_mail" size="50"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="Submit" value="Submit"> <input type="reset" name="Submit2" value="Reset"></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
Mail.php
<?php
// Contact subject
$subject ="$subject";
// Details
$message="$detail";
// Mail of sender
$mail_from="$customer_mail";
// From
$header="from: $name <$mail_from>";
// Enter your email address
$to ='[email protected]';
$mail=mail($to,$subject,$message,$header);
// Check, if message sent to your email
// display message "We've recived your information"
if($mail){
echo "We've recived your contact information";
}
else {
echo "ERROR";
}
?>
わからない
0
レビュー
答え :
解決策:
これは最も単純な形式であり、注入が可能です。
$subject ="write something here";
// Details
$message = "write something here";
// Mail of sender
$mail_from = $_POST['customer_mail'];
// From
$header="fromfrom: yourname <[email protected]>";
// Enter your email address
$to ='$mail_from';
そして残りのコードをその後に置きます。
編集:
$subject = $_POST['details'];
// Mail of sender
$mail_from = $_POST['customer_mail'];
// From
$name = $_POST['name'];
// Details
$message = 'E-mail sent from: '.$mail_from.'\r\nName: '.$nane.'\r\n'.$_POST['details'];
// Enter your email address
$to ='[email protected]';
$mail=mail($to,$subject,$message);
最終編集:
<?
if (isset($_POST['customer_mail'])) {
$subject = $_POST['detail'];
// Mail of sender
$mail_from = $_POST['customer_mail'];
// From
$name = $_POST['name'];
// Details
$message = 'E-mail sent from: '.$mail_from.'\r\nName: '.$name.'\r\n'.$_POST['detail'];
// Enter your email address
$to ='[email protected]'; //edit this
$mail=mail($to,$subject,$message);
echo "Your mail has been sent";
} else {
?>
<table width="400" border="0" align="center" cellpadding="3" cellspacing="1">
<tr>
<td><strong>Contact Form </strong></td>
</tr>
</table>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td>
<form name="form1" method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
<table width="100%" border="0" cellspacing="1" cellpadding="3">
<tr>
<td width="16%">Subject</td>
<td width="2%">:</td>
<td width="82%">
<input name="subject" type="text" id="subject" size="50">
</td>
</tr>
<tr>
<td>Detail</td>
<td>:</td>
<td>
<textarea name="detail" cols="50" rows="4" id="detail"></textarea>
</td>
</tr>
<tr>
<td>Name</td>
<td>:</td>
<td>
<input name="name" type="text" id="name" size="50">
</td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td>
<input name="customer_mail" type="text" id="customer_mail" size="50">
</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td>
<input type="submit" name="Submit" value="Submit">
<input type="reset" name="Submit2" value="Reset">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
<?
}
?>
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。