我的登录无效

时间:2016-03-06 13:09:01

标签: php login

我收到错误:

Undefined variable: user_data in loggedin.php 

我的注册页面很好,它注册成功的用户。当我登录它显示我所有的信息,但不显示user_data.If有人可以写我在哪里是我的错。我 的init.php

<?php 
session_start();
error_reporting(0);
require 'database/connect.php';
require 'functions/general.php';
require 'functions/users.php';
$_SESSION['user_id'] = (int)1;
if(logged_in() === false) {
$session_user_id = $_SESSION['user_id'];
$user_data = user_data($session_user_id, 'user_id', 'username', 'password', 'first_name', 'last_name', 'email', 'profile', 'textarea', 'writingname', 'writing');
echo $user_data['password'];
if(user_active($user_data['username']) === false) {
    session_destroy();
    header('Location: index2.php');
    exit();
}
}
$errors = array() ; 
?>

users.php:

function user_data($user_id) {
    $data = array();
    $user_id = (int)$user_id;
    $func_num_args = func_num_args();
    $func_get_args = func_get_args();
if ($func_num_args > 1) {
    unset($func_get_args[0]);
$fields = '`' . implode ('`, `', $func_get_args) . '`';

$data = mysql_fetch_assoc(mysql_query("SELECT $fields FROM `users` WHERE `user_id` = $user_id"));

return $data;
    }
    }
function logged_in() {
    return (isset($_SESSION['user_id'])) ? true : false;
}
function user_exists($username) {
    $username = sanitize($username);
  return (mysql_result( mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `username` ='$username' "), 0) == 1) ? true : false;
}

和我的

loggedin.php :
<div class="widget">
<h2 onClick="document.location.href='index2.php'">Hello<?php echo $user_data['first_name']; ?> ! </h2>
<div class="inner">

2 个答案:

答案 0 :(得分:0)

你是否已将$ user_data从init.php传递给loggedin.php ??? $ user_data不是会话,所以你不能只在init.php中创建$ user_data并在loggedin.php中回显它... CMIIW

var_dump可能会帮助你“

答案 1 :(得分:0)

将init.php代码更改为以下内容。

<?php 
session_start();
error_reporting(0);
require 'database/connect.php';
require 'functions/general.php';
require 'functions/users.php';
$_SESSION['user_id'] = (int)1;
if(logged_in() === false) {
$session_user_id = $_SESSION['user_id'];
$user_data = user_data($session_user_id);// just send user id here stored in session.
echo $user_data['password'];
if(user_active($user_data['username']) === false) {
    session_destroy();
    header('Location: index2.php');
    exit();
}
}
$errors = array() ; 
?>