将变量传递到3页

时间:2014-05-23 14:04:19

标签: php forms variables post login

我花了很多时间寻找可以帮助我做到这一点的事情: 我有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']; ?>

1 个答案:

答案 0 :(得分:1)

你正在覆盖index.php中的$_SESSION: 删除该部分

$_SESSION['dadoslogin']=$_POST;

并像这样回复你的变量:

echo $_SESSION['dadoslogin']['username'];