我花了很多时间寻找可以帮助我做到这一点的事情: 我有3个页面,一个名为login.php,另一个名为trataLogin.php,另一个名为index.php。
登录和trataLogin页面工作正常,但是当我尝试从登录中调用变量到index.php时我无法做到这一点..我不知道还能做什么。
这是我的login.php
<?php
require_once('connection/dbconnection.php');
session_start();
?>
...
<form name="form" action="trataLogin.php" method="post">
<input type="text" name="username" placeholder="username" /><br/>
<input type="password" name="password" placeholder="password" /><br/>
<br/>
<br/>
<input type="submit" value="login" />
</form>
trataLogin.php
<?php
require_once('connection/dbconnection.php');
session_start();
$_SESSION['dadoslogin']=$_POST;
$username = $_POST['username'];
$password = sha1($_POST['password']);
$query = "SELECT * FROM utilizadores WHERE username = '" . $username . "' AND password = '" . $password . "'";
$admin='';
$result = $conn->query($query);
if ($result->num_rows > 0) {
$_SESSION['verifica_login'];
$row = $result->fetch_assoc();
if ($row['admin'] == 1) {
$admin = true;
header('Location:admin.php');
} elseif($row['admin'] == 0){
$admin = false;
header('Location:index.php');
} else {
$_SESSION['verifica_login']="Username ou password incorretos";
}}
?>
并在index.php中我有这个
<?php
require_once('connection/dbconnection.php');
session_start();
$_SESSION['dadoslogin']=$_POST;
?>
以及index.php中的某个地方我想要打印登录用户的用户名
<?php echo $_SESSION['username']; ?>
答案 0 :(得分:1)
你正在覆盖index.php中的$_SESSION
:
删除该部分
$_SESSION['dadoslogin']=$_POST;
并像这样回复你的变量:
echo $_SESSION['dadoslogin']['username'];