我相信这很简单,但我不明白为什么这不起作用:
post.php的内容:
<form action="receive.php" />
<p>input</p>
<div><textarea id='sendme' name="sendme" cols="30" rows="4"></textarea></div>
<div><input type="submit" /></div>
</form>
receive.php的内容:
<?php
if(isset($_POST)==true && empty($_POST)==false){
$data = $_POST['sendme'];
}
echo $_POST['sendme'];
echo $data;
?>
结果:
没什么:|答案 0 :(得分:3)
您已在表单method="post"
中设置,因此:
<form action="receive.php" method="post">
...
</form>
您也可以<form>
关闭/>
代码 - 您不应该这样做。
答案 1 :(得分:2)
你的问题是你没有对你的表单使用post方法,<form>
的默认方法是get
,如果你想通过post方法发送数据,你应该这样做:
<form action="..." method="post"> ... </form>
注意:解决问题后,请注意全局变量$_POST
始终设置,如果没有从用户发布数据,则其值为空数组:array()
。
因此,isset($_POST)
始终返回true。
您必须以这种方式检查if($_POST)
,检查$_POST
是否为空。
答案 2 :(得分:1)
首先在表单标记method="post"
然后print_r($_POST)
看你是否收到任何东西。
答案 3 :(得分:1)
向表单添加方法,否则,它将收到$ _GET ['sendme']
<form action="receive.php" method="post">
答案 4 :(得分:1)
您必须将方法属性传递给表单标记
<form action="receive.php" method = "POST">