Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP检查另一页传递的空字段_Php_Session Variables - Fatal编程技术网

PHP检查另一页传递的空字段

PHP检查另一页传递的空字段,php,session-variables,Php,Session Variables,我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我不明白为什么。用户名和密码由另一个页面中的表单通过POST方法传递 session_start(); if(!(isset($_SESSION['username'])) && !(isset($_SESSION['password']))){ $_SESSION['username']=trim($_POST['username']); $_SESSION['password']=

我需要检查另一个页面传递的用户名和密码是否为空,但这不起作用,我不明白为什么。用户名和密码由另一个页面中的表单通过POST方法传递

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()可以。谢谢您的回复。