我已经让我的验证工作了,但我想只输出它,当它被提交但 isset 或 empty 似乎出于某种原因对我有用?我相信我正在使用php 5.5.3
我的代码:
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post" name="register">
<input type="text" placeholder="Username" maxlength="15" name="username"/><br>
<input type="password" maxlength="15" name="password1"/><br>
<input type="password" maxlength="15" name="password2" /><br>
<input type="text" placeholder="your@email.com" maxlength="25" name="email"/><br>
<input type="text" maxlength="20" name="county" /><br>
<input type="submit" value="Register" name "register"/>
</form>
<?php
//Form Validation
if(empty($_POST['register']))
{
echo "Option A <br>";
}
else
{
echo "Option B <br>";
}
另外,我不记得如果验证正常,我将如何为该用户输入相同的信息?
value="<?php $_POST['stuff'] ?>
<input type="submit" value="Register" name "register"/>
^
你在那里错过了一个=
。
它应该是:
<input type="submit" value="Register" name="register"/>
在这种情况下,最好使用 isset()
而不是 empty()
:
if(isset($_POST['register']))
{
echo "Option A <br>";
}
else
{
echo "Option B <br>";
}
我不确定选项 A 和 B 是什么,但使用此代码,您在加载页面时始终会看到Option B
。if
块中的条件将执行到FALSE
,因此将执行else
块。如果要避免这种情况,可以使用 elseif
语句而不是 else
。