我正在检查它与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