PHP检查另一页传递的空字段
我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我不明白为什么。用户名和密码由另一个页面中的表单通过POST方法传递PHP检查另一页传递的空字段,php,session-variables,Php,Session Variables,我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我不明白为什么。用户名和密码由另一个页面中的表单通过POST方法传递 session_start(); if(!(isset($_SESSION['username'])) && !(isset($_SESSION['password']))){ $_SESSION['username']=trim($_POST['username']); $_SESSION['password']=
session_start();
if(!(isset($_SESSION['username'])) && !(isset($_SESSION['password']))){
$_SESSION['username']=trim($_POST['username']);
$_SESSION['password']=$_POST['password'];
}
[……]
$username=$\u会话['username'];
$password=$\会话['password'];
如果($username==“”| |$password==“”)
{
回声“
警报('您需要填写所有字段!');
window.location.assign('reg.php');
";
}
谢谢
编辑。
现在有了这个:
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>";
}
if(is_null($username)| is_null($password))
{
回声“
警报('您需要填写所有字段!');
window.location.assign('reg.php');
";
}
其他的
{
如果(strlen($username)您现在正在检查用户名和密码是否为空。$username=“”
但是当有人跳过一个输入时,它是空的。所以你必须检查它。你可以用is\u null()
函数来完成
所以现在您需要:为空($username)
您现在检查用户名和密码是否为空。$username=“”
但是当有人跳过一个输入时,它是空的。所以你必须检查它。你可以用is\u null()
函数来完成
现在您可以这样做:为空($username)
您可以检查empty()。您可以使用头位置而不是javascript重定向
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if(empty($username) || empty($password))
{
header("Location: reg.php");
}
您可以选中empty()。并且可以使用头位置而不是javascript重定向
$username = $_SESSION['username'];
$password = $_SESSION['password'];
if(empty($username) || empty($password))
{
header("Location: reg.php");
}
如果在if($username…
line)数组([username]=>[password]=>)之前添加print\r($\u SESSION);
,您会看到什么?请尝试:if(isset($\u SESSION['username'])和&isset($\u SESSION['password'])
因此$\u会话数组中的用户名和密码键是空的。您能确认设置是否正确吗?例如,检查$\u POST['username']
中是否有任何数据?就像以前一样。如果在之前添加打印($\u会话);
如果($username…
line)数组([username]=>[password]=>),您会看到什么尝试:if(isset($\u SESSION['username'])和&isset($\u SESSION['password'])
,这样$\u SESSION数组中的用户名和密码键是空的。您能确认设置是否正确吗?例如,检查$\u POST['username']
中是否有任何数据?就像以前一样。在PHP中,它们是一样的。是否为null()似乎可以工作;但我不知道为什么现在我看到下一个语句的错误消息,它控制字段是否为最小长度…但它必须显示与空白字段相关的错误消息!在PHP中,它们是相同的。是否为null()似乎有效;但我不知道为什么现在我看到下一条语句的错误消息,该语句控制字段是否为最小长度…但它必须显示与空白字段相关的错误消息!我刚刚尝试使用empty(),没有任何更改。我刚刚编辑了我的初始消息。抱歉,Rashid,但您的解决方案只是在上一页上重定向;在此之前,我需要至少显示一条错误消息!因此,如果在重定向到页面之前用户名或密码为空,您可以设置一条错误消息,并通过检查变量消息在那里打印。我不知道为什么,但是empty()似乎不起作用。is_null()很好。谢谢你的友好回复。我刚刚试过使用empty(),没有任何更改。我刚刚编辑了我的初始消息。抱歉,Rashid,但您的解决方案只是在上一页上重定向;在此之前,我需要至少显示一条错误消息!因此,如果在重定向到页面之前用户名或密码为空,您可以设置一条错误消息,并通过检查变量消息在那里打印。我不知道为什么,但是empty()似乎不起作用。is_null()可以。谢谢您的回复。