Wyświetlanie username.

0

Witam,

Taki problem: Po zalogowaniu chciałbym wyświetlić komunikat "Welcome, {nazwa użytkownika}". Dlaczego takie coś nie działa? Wyświetla się jedynie "Welcome, ".

Funkcja odpowiedzialna za logowanie:

public function loginUser($email, $password)
	{
		global $pdo;
		$query = $pdo->prepare("SELECT id, username FROM users WHERE email = ? AND password = ?");
		$query->execute(array($email, $password));
		$userdate = $query->fetch();
		
		$num = $query->rowCount();
		if($num == 1)
		{
			session_start();
			$_SESSION['login'] 			= true;
			$_SESSION['uid'] 				= $userdata['id'];
			$_SESSION['uname'] 		= $userdata['username'];
			$_SESSION['login_msg'] 	= 'Login successfully';
			return true;
		}
		else
		{
			return false;
		}
	}
 

Strona wyświetlajaca zawartość:

 
<?php
session_start();
require_once "functions.php";

$user 				= new LoginRegistration();
$uid 					= $_SESSION['uid'];
$username 		= $_SESSION['uname'];

//print_r($username);

if(!$user->getSession())
{
	header('Location: login.php');
	exit();
}
?>

//html

<h2>Welcome, <?php echo $username; ?></h2>

//html
0

Nie rozpoczynaj dwa razy sesji (masz session_start(); w metodzie loginUser).

0

No ok... Ale to nie rozwiązuje problemu.

0

Rozwiązane. Literówki w loginUser()

1 użytkowników online, w tym zalogowanych: 0, gości: 1