我收到错误:
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">
答案 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() ;
?>