Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 带有联系人表单的自定义Wordpress页面_Php_Wordpress - Fatal编程技术网

Php 带有联系人表单的自定义Wordpress页面

Php 带有联系人表单的自定义Wordpress页面,php,wordpress,Php,Wordpress,我正在尝试为Wordpress网站创建一个联系人表单。仅供参考:客户希望表单是静态的,因此他们不需要在将来更改表单。我在网上找到了这张表格。我把它放在Wordpress的自定义页面中。我还在服务器上放了一个mail.php文件。当我点击提交时,它会将我劫持到我的主页/主主题页,而我的消息永远不会被发送。我不明白为什么我要去参拜,以及我如何解决这个问题 <table width="400" border="0" align="center" cellpadding="3" cellspaci

我正在尝试为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>&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";
}
?>

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

$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';
最终编辑:

  <?

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>


<?
}
?>

联系方式

mail.php是否在web根目录中?如果是这样,请尝试将表单操作更改为“/mail.php”。更好的是,使用众多优秀的联系人表单插件中的一个——它们将提供更好的用户反馈,甚至使用AJAX。我需要能够完全自定义插件将提供的内容和/mail.php不起作用的内容。mail.php在哪里?你已经发布了mail.php的完整内容了吗,因为你那里的内容肯定不起作用-它没有使用$\u POST的内容。是的,这就是mail.phpI的全部内容。你不认为你的php达到了你应该编写自己的邮件脚本的水平。请慎重考虑使用插件。很多都是可定制的(我喜欢联系人表单7);写任何介于
之间的内容我需要人们能够键入表单并通过不可编辑的方式发送。我的意思是,客户将无法更改发送给我的电子邮件。我发布了一个已编辑的更改yourdomain@yourdomain.com到你的地址,它应该是你的域名的有效电子邮件,否则邮件将不会被发送。它仍然不起作用。url上写着mail.php,但我会把我带到主页
  <?

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>


<?
}
?>