未通过PHP会话

未通过PHP会话,php,session,authentication,forms-authentication,Php,Session,Authentication,Forms Authentication,我正在为我的学校用户名和密码进行身份验证。学校有自己的后台脚本用于表单发布。它允许一些带有特定名称的隐藏输入进行定制,例如,成功时页面重定向。但是,我不能将任何session\u start()或我的任何php代码放在该页面上,因为在login.php之后,登录页面被重定向到学校页面,然后被重定向回我的index.php。post值被传递到index.php,但在页面刷新时,它会返回到登录页面,因为会话不会与post值一起保存 这方面的任何帮助都将非常有用 Index.php <?php

我正在为我的学校用户名和密码进行身份验证。学校有自己的后台脚本用于表单发布。它允许一些带有特定名称的隐藏输入进行定制,例如,成功时页面重定向。但是,我不能将任何
session\u start()
或我的任何php代码放在该页面上,因为在
login.php
之后,登录页面被重定向到学校页面,然后被重定向回我的
index.php
。post值被传递到
index.php
,但在页面刷新时,它会返回到登录页面,因为会话不会与post值一起保存

这方面的任何帮助都将非常有用

Index.php

<?php
session_start();
$_SESSION['username'] = $_POST['sid'];
if(!isset($_SESSION['username'])){
header("Location: login.php");
} else {
?>
// HTML here
<?php
}
?>
<form action="authenticator.pl" name="form1" method="POST">
    // Using hidden inputs I specify which page to redirect to... These are specific hidden inputs that are accepted.
</form>

//这里是HTML
Login.php

<?php
session_start();
$_SESSION['username'] = $_POST['sid'];
if(!isset($_SESSION['username'])){
header("Location: login.php");
} else {
?>
// HTML here
<?php
}
?>
<form action="authenticator.pl" name="form1" method="POST">
    // Using hidden inputs I specify which page to redirect to... These are specific hidden inputs that are accepted.
</form>

//使用隐藏输入,我指定重定向到哪个页面。。。这些是可接受的特定隐藏输入。

您必须包括
会话\u start()位于每个需要检查其是否已登录的文件的顶部

将if语句放在login.php的顶部,以检查会话是否存在。如果确实如此,则重定向到index.php

在index.php的顶部,检查他们是否使用if语句登录。如果没有,则转到index.php的其余部分(否则{}),然后将它们重定向到login.php

在login.php脚本中运行检查和身份验证后设置会话。您可以这样设置会话:

$_SESSION['userid']     = $id;
$_SESSION['username']   = $name;
$_SESSION['userpass']   = $pass;

只需确保添加
session_start()并检查它们的会话是否等同于登录用户。

您必须包含
会话\u start()位于每个需要检查其是否已登录的文件的顶部

将if语句放在login.php的顶部,以检查会话是否存在。如果确实如此,则重定向到index.php

在index.php的顶部,检查他们是否使用if语句登录。如果没有,则转到index.php的其余部分(否则{}),然后将它们重定向到login.php

在login.php脚本中运行检查和身份验证后设置会话。您可以这样设置会话:

$_SESSION['userid']     = $id;
$_SESSION['username']   = $name;
$_SESSION['userpass']   = $pass;

只需确保添加
session_start()并检查它们的会话是否等同于登录用户。

您必须包含
会话\u start()位于每个需要检查其是否已登录的文件的顶部

将if语句放在login.php的顶部,以检查会话是否存在。如果确实如此,则重定向到index.php

在index.php的顶部,检查他们是否使用if语句登录。如果没有,则转到index.php的其余部分(否则{}),然后将它们重定向到login.php

在login.php脚本中运行检查和身份验证后设置会话。您可以这样设置会话:

$_SESSION['userid']     = $id;
$_SESSION['username']   = $name;
$_SESSION['userpass']   = $pass;

只需确保添加
session_start()并检查它们的会话是否等同于登录用户。

您必须包含
会话\u start()位于每个需要检查其是否已登录的文件的顶部

将if语句放在login.php的顶部,以检查会话是否存在。如果确实如此,则重定向到index.php

在index.php的顶部,检查他们是否使用if语句登录。如果没有,则转到index.php的其余部分(否则{}),然后将它们重定向到login.php

在login.php脚本中运行检查和身份验证后设置会话。您可以这样设置会话:

$_SESSION['userid']     = $id;
$_SESSION['username']   = $name;
$_SESSION['userpass']   = $pass;

只需确保添加
session_start()并检查它们的会话是否等同于登录用户。

如果您没有将post数据发送到index.php页面,则下一行将清除用户名会话值

$_SESSION['username'] = $_POST['sid'];

如果您没有将post数据发送到index.php页面,那么下面一行将清除用户名会话值

$_SESSION['username'] = $_POST['sid'];

如果您没有将post数据发送到index.php页面,那么下面一行将清除用户名会话值

$_SESSION['username'] = $_POST['sid'];

如果您没有将post数据发送到index.php页面,那么下面一行将清除用户名会话值

$_SESSION['username'] = $_POST['sid'];

那么这个问题的解决方案是什么呢?如果用户名会话变量是由login.php文件设置的,您可以完全删除该行。那么解决方案是什么呢?如果用户名会话变量是由login.php文件设置的,您可以完全删除该行。那么解决方案是什么呢?如果用户名会话变量是由login.php文件设置的,您可以完全删除该行。那么解决方案是什么呢?如果用户名会话变量是由login.php文件设置的,您可以完全删除该行。