带有联系表格的自定义Wordpress页面

时间:2013-07-24 02:28:36

标签: php wordpress

我正在尝试为Wordpress网站创建联系表单。仅供参考:客户希望表单是静态的,以便将来不需要更改它。我在网上找到了这个表格。我把它放在Wordpress的自定义页面中。我还在我的服务器上放了一个mail.php文件。当我点击提交时,它将我劫持到我的主页/主题页面,我的消息从未发送过。我不明白为什么我要向我致敬,以及如何解决这个问题。

enter image description here

<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>&nbsp;</td>
<td>&nbsp;</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 ='someone@somewhere.com';
$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";
}
?>

1 个答案:

答案 0 :(得分:0)

这是最简单的形式,可以注射..

$subject ="write something here";

// Details 
$message = "write something here";

// Mail of sender 
$mail_from = $_POST['customer_mail'];

// From 
$header="fromfrom: yourname <yourdomain@yourdomain.con>";

// 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 ='yourdomain@yourdomain.com';

$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 ='yourdomain@yourdomain.com'; //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>&nbsp;</td> 
            <td>&nbsp;</td> 
            <td>
              <input type="submit" name="Submit" value="Submit"> 
              <input type="reset" name="Submit2" value="Reset">
            </td> 
          </tr> 
        </table> 
      </form> 
    </td> 
  </tr> 
</table>


<?
}
?>