PHP 检查另一个页面传递的空字段
PHP checking empty fields passed by another page
我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我不明白为什么。用户名和密码由另一个页面中的表单使用 POST 方法传递。
session_start();
if(!(isset($_SESSION['username'])) && !(isset($_SESSION['password']))){
$_SESSION['username']=trim($_POST['username']);
$_SESSION['password']=$_POST['password'];
}
[...]
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if($username=="" || $password=="")
{
echo "<script>
alert('You need to fill all fields!');
window.location.assign('reg.php');
</script>";
}
谢谢。
编辑。
现在有了这个:
if(is_null($username) || is_null($password))
{
echo "<script>
alert('You need to fill all fields!');
window.location.assign('reg.php');
</script>";
}
else
{
if(strlen($username)<5 || strlen($password)<5)
{
echo "<script>
alert('Fiels must be at least of 5 character!');
window.location.assign('reg.php');
</script>";
}
它直接跳转到第二条错误信息,'Fiels must be at least of 5 character!'。
为什么?
谢谢
您正在检查用户名和密码是否为空。 $username = ""
但是当有人跳过输入时它是空的。所以你必须检查一下。您可以使用 is_null()
函数来做到这一点。
现在你可以:is_null($username)
你可以勾选empty()。您可以使用 header 位置而不是 javascript 重定向。
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if(empty($username) || empty($password))
{
header("Location: reg.php");
}
我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我不明白为什么。用户名和密码由另一个页面中的表单使用 POST 方法传递。
session_start();
if(!(isset($_SESSION['username'])) && !(isset($_SESSION['password']))){
$_SESSION['username']=trim($_POST['username']);
$_SESSION['password']=$_POST['password'];
}
[...]
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if($username=="" || $password=="")
{
echo "<script>
alert('You need to fill all fields!');
window.location.assign('reg.php');
</script>";
}
谢谢。
编辑。 现在有了这个:
if(is_null($username) || is_null($password))
{
echo "<script>
alert('You need to fill all fields!');
window.location.assign('reg.php');
</script>";
}
else
{
if(strlen($username)<5 || strlen($password)<5)
{
echo "<script>
alert('Fiels must be at least of 5 character!');
window.location.assign('reg.php');
</script>";
}
它直接跳转到第二条错误信息,'Fiels must be at least of 5 character!'。 为什么? 谢谢
您正在检查用户名和密码是否为空。 $username = ""
但是当有人跳过输入时它是空的。所以你必须检查一下。您可以使用 is_null()
函数来做到这一点。
现在你可以:is_null($username)
你可以勾选empty()。您可以使用 header 位置而不是 javascript 重定向。
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if(empty($username) || empty($password))
{
header("Location: reg.php");
}