我创建了一个联系表单contact.php,它将值提交给send_contact.php&处理输入
但是发生了什么,在我按下提交按钮后,send_contact.php文件将显示在浏览器中
contact.php
<table width="300" border="0" align="left" cellpadding="0" cellspacing="1">
<tr>
<td>
<form target="_blank" name="form1" method="post" action="send_contact.php" id="form1">
<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="30" /></td>
</tr>
<tr>
<td>Detail</td>
<td>:</td>
<td>
<textarea name="detail" cols="24" rows="4" id="detail">
</textarea></td>
</tr>
<tr>
<td>Name</td>
<td>:</td>
<td><input name="name" type="text" id="name" size="30" /></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="customer_mail" type="text" id="customer_mail" size="30" /></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>
send_contact.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 ='abcd@gmail.com';
$send_contact=mail($to,$subject,$message,$header);
// Check, if message sent to your email
// display message "We've recived your information"
if($send_contact){
echo "We've recived your contact information";
}
else {
echo "ERROR";
}
?>
答案 0 :(得分:3)
您似乎依赖于register globals,这是一项危险的PHP功能,已从该语言的最新版本中完全删除。
要访问使用method="post"
的表单提交的数据,您需要使用the $_POST
superglobal数组。
$subject = $_POST['subject'];
答案 1 :(得分:2)
您需要从$ _POST获取值,例如
$subject ="$subject";
应该是这样的:
$subject =$_POST['subject'];
这是您使用超全局数组$ _POST
访问表单中的值的方法