我正在检查它,if ($_POST["submit"])
但当然如果他们没有,它正在尝试访问一个不存在的变量。但是,我首先使用此检查来查看它是否确实存在,但 PHP 为我输出了错误。
可以吗?我没有对它做任何事情,我只是在检查它是否在那里。或者有更好的方法吗?
我的单选按钮也是如此。如果他们点击提交,我会检查他们的值,但如果他们点击提交而不按任何我会得到一个错误。
你会想要使用isset
它:
if ( isset($_POST["submit"]) )
更好的方法是只检查REQUEST_METHOD,看看它是否是一个 POST 请求:
if ( $_SERVER['REQUEST_METHOD') == 'POST' )
我认为你需要先检查你的表单方法,在处理时确保你的代码是这样的$_POST
;
<form method="post">
...
<input type="radio" name="gender" value="1">
<input type="radio" name="gender" value="2">
...
<input type="submit" name="submit">
</form>
然后您可以通过以下方式轻松检查您的$_POST
参数;
if (isset($_POST['submit'])) {
echo "Form submitted!";
// this makes gender and integer value or 0 silently
@ $gender = (int) $_POST['gender'];
if ($gender === 1) echo "Gender = 1";
else if ($gender === 2) echo "Gender = 2";
else echo "Gender = NULL";
// and so on