试图了解这是什么($ _ POST)代码正在做什么
if (isset($_POST['Submit'])) {
$title=$_POST['title'];
$forename = $_POST['forename'];
$surname=$_POST['surname'];
$dob=$_POST['dob'];
$gender=$_POST['gender'];
$email=$_POST['email'];
$phone=$_POST['phone'];
$password=$_POST['password'];
if (authRegister($title, $forename, $surname, $dob, $gender, $email, $phone, $password))
{
echo 'Thank you for registering your details, you can now login';
}
else
{
outputErrors();
}
答案 0 :(得分:3)
它会检查提交到此php页面的表单中是否有名称为“Submit”的字段(可能是提交按钮)。换句话说,它表明已经提交并且必须进行处理。
另外我会说,无论何时将表单发布到php页面,所有具有表单name属性的字段都在$_POST
数组中表示。有两种方法可以检查数组中是否存在密钥:
$array = array('key_name' => 'value');
isset($array['key_name']);
array_key_exists('key_name', $array)
如果'key_name'
中存在$array
但<{1}}值为null
,则isset()也会返回false。 array_key_exists将在此键中返回true。
答案 1 :(得分:1)
isset()
函数检查参数变量是否存在或“已设置”。
isset($_POST['submit'])
通常用于检查表单是否已提交
在运行一些代码之前。在您的示例中,表单很可能是提交的
按钮已被命名为“提交”。如果表单按钮已命名为“小部件”
然后你会看到isset($_POST['widget'])
。
答案 2 :(得分:1)
$ _ POST是表单使用POST方法发送的用户参数的超级全局变量。
表达式isset($ _ POST ['Submit'])仅当'Submit'是现有参数时返回true,即如果用户使用n HTML表单发送了这样的值。它通常会测试是否已使用名为“提交”的按钮发送表单。
如果是这样,那么下一个代码就是检索同样由同一表单发送的用户参数(title,forename,srname,...)。参数保存到PHP局部变量中。代码的这一部分假定表单已发送此额外参数。然而,如果表单的发送被黑客攻击,我将省略这些参数。
答案 3 :(得分:0)
isset
检查变量是否存在,它是否存在且为空。如果要检查变量是否为空,请使用empty
。