我有一个php文件,其中包含一个用于更新联系人的表单(包含2个输入框和一个提交按钮)。我设法用联系人的数据填充字段,但我无法检测是否单击了提交按钮
表格看起来像这样
echo "<form action=Contact.php><table>".
"<tr><td>First Name</td><td><input type=text size=75% name=FirstName value='".$row['FirstName']."'></td></tr>".
"<tr><td>Last Name</td><td><input type=text size=75% name=LastName value='".$row['LastName']."'></td></tr>".
"<tr><td colspan=2><input type=submit name=UpdateContact value=Update></td></tr>".
"</table></form>";
如果单击该按钮,此代码应输出“单击”消息
if (isset($_POST['UpdateContact']))
{
echo "<p>clicked";
}
else
{
echo "<p>not clicked";
}
任何人都可以帮助我或告诉我我做错了什么
(我希望从相同的php文件中填写联系人的数据并从中更新数据库)
答案 0 :(得分:5)
表单的默认method
是GET,因此要么将表单的方法属性设置为“post”,要么将PHP中的$ _POST更改为$ _GET。
echo "<form method=post action=Contact.php><table>".
"<tr><td>First Name</td><td><input type=text size=75% name=FirstName value='".$row['FirstName']."'></td></tr>".
"<tr><td>Last Name</td><td><input type=text size=75% name=LastName value='".$row['LastName']."'></td></tr>".
"<tr><td colspan=2><input type=submit name=UpdateContact value=Update></td></tr>".
"</table></form>";
或
if (isset($_GET['UpdateContact']))
{
echo "<p>clicked";
}
else
{
echo "<p>not clicked";
}
答案 1 :(得分:0)
你确定你的代码到达了php文件吗?如果是,那么第一个想要检查的是请求类型..使用$ _SERVER ['REQUEST_METHOD']
如果点击该按钮,它将发出POST,如果使用像google.com/Contact.php这样的URL访问页面,则会获得GET。 另外,你可能需要在表格动作的第一行添加METHOD =“POST”“form action = Contact.php