Zamierzam zrezygnować ze starego mysql i przekonwertować wszystko na PDO. I mam taki problem: chcę wyświetlić dane użytkownika na podstawie S_SESSION['user_id'] gdzie S_SESSION['user_id'] = columna user_id z tablicy users.
W PDO user_id z tablicy nie chce przypisać sie do sesji i kiedy próbuje wyświetlić informacje użytkownika to pojawia sie Notice: Undefined index: user_id in
....
$user = new User;
$user_id = $_SESSION['user_id']; //tutaj pojawia się Notice: Undefined index: user_id in
$data = $user->userInfo($user_id);
echo $data['username'],'<br />'; echo $data['email'],'<br />';
lub zaloguj się
if(isset($_SESSION['user_id'])){
$data = $user->userInfo($user_id);
echo $data['username'],'<br />'; echo $data['email'],'<br />';
}else {
}
Classclass User {
public $user_id = null;
public function userInfo($user_id) {
$query = $db->prepare("SELECT user_id, username, email FROM users WHERE user_id = :id");
$query->bindValue(':id', $user_id);
$query->execute();
return $query->fetch();
}
public function login($username, $password){
$query = $db->prepare("SELECT COUNT(user_id) as count, user_id FROM users WHERE username = :user AND password = :pass");
$query->bindValue(':user', $username);
$query->bindValue(':pass', $password);
$query->execute();
$result = $query->fetchColumn();
if ($result) {
$this->user_id = $result['user_id'];
}
return $result;
}
}
login.php$user = new User;
$logowanie = $user->login($username, $password);
if($logowanie) {
$_SESSION['user_id'] = $user->user_id; // tutaj user_id z tablicy nie jest przypisany do sesji
header('Location: konto.php'); } else {
$errors[] = 'Niepoprawne dane!';
}
Jak przypisać user_id z tablicy do $_SESSION['user_id']; (IMG:
style_emoticons/default/questionmark.gif)