我正在尝试创建一个表单,在提交时将通过MySQL运行查询。但是,当我测试它时,没有任何反应,但我没有收到任何错误。我在同一页面上有另一个不同的格式。
这是php位:
if(isset($_POST['submit']))
{
$owner = $_POST['id'];
$get = @mysql_query("SELECT * FROM wolves WHERE name = '$owner'");
$result = mysql_fetch_assoc($get);
echo $result['name'];
}
以下是表格:
<?php
echo
"
<form action=test.php name=form2>
Id: <select name='id'>
";
while ($own = mysql_fetch_array($query))
{
echo "<option value='" . $own['name'] . "'>" . $own['name'] . "</option>";
}
echo "</select><input type=submit name=submit value=Submit!></form>";
?>
提交表单时,URL中会显示正确的值,但php似乎根本不起作用。我做错了什么?
答案 0 :(得分:1)
以表格形式发布的第一个提及方法
检查表单是否提交到预期的循环内,
然后请在表单提交循环中使用while循环来获取您的预期值,如下所示,
if(isset($_POST['submit']))
{
$owner = $_POST['id'];
$get = @mysql_query("SELECT * FROM wolves WHERE name = '$owner'");
while($result = mysql_fetch_assoc($get)) {
echo $result['name'];
}
}
答案 1 :(得分:0)
提交表单时,URL中会显示正确的值
表示通过网址传递的数据,您可以通过GET方法获取,否则提及post
作为表单中的方法
<form action=test.php name=form2 method=post>
答案 2 :(得分:0)
您尚未为表单设置method
。这意味着将使用get
方法将值发送到服务器。在php中,您可以使用$_GET
超级全局访问这些变量。
您所做的是,使用get
方法提交表单并尝试使用$_POST
superglobal 访问这些值,该值为空,且您的服务器为{返回false {1}}。
将表单的if(isset($_POST['submit']))
更改为method
,然后重新运行代码。
答案 3 :(得分:0)
您必须以表格
取method="post"
<form action="test.php" name="form2" method="post">