I'm pretty clueless on how to retrieve or echo a username from the database,
i have referenced this
and more similar questions like this, however i still don't understand how to echo out the current user username.
everything works fine, i can login and logout
just cant get find a way to echo current username
here is the code
User.php
public function get_user_sess()
{
try{
$query = $this->db->prepare("SELECT * FROM users WHERE user_name=':username'");
$query->execute(array(':username'=>$username));
$userRow = $query->fetch(PDO::FETCH_ASSOC);
return $_SESSION['user_session'] = $userRow['username'];
}
catch(PDOExeception $e)
{
echo $e->getMessage();
}
}
public function login($username, $password)
{
try{
$stmt = $this->db->prepare("SELECT * FROM users WHERE user_name=:username OR user_pass=:password LIMIT 1");
$stmt->execute(array(':username'=>$username, ':password'=>$password ));
$userRow = $stmt->fetch(PDO::FETCH_ASSOC);
if ($stmt->rowCount() > 0)
{
if(password_verify($password,$userRow['user_pass']))
{
$_SESSION['login'] = TRUE;
$_SESSION['user_session'] = $userRow['user_id'];
return true;
}
else{
return false;
}
}
}
catch(PDOExeception $e)
{
echo $e->getMessage();
}
}
Profile.php
<?php
session_start();
error_reporting(-1);
require_once 'User.php';
$user = new User();
if(isset($_GET['q'])){
$user->logout();
$user->redirect('login');
}
require_once 'layouts/header.php';
?>
<h1>Welcome
<?php
$user = new User();
echo $user->get_user_sess();
?>
</h1>
<ul>
<li><a href="profile.php?q=logout">LOGOUT</a></li>
</ul>
<?php require_once ('layouts/footer.php');?>
Login.php
<?php
session_start();
error_reporting(-1);
require 'Db.php';
require 'User.php';
if(isset($_POST['btn_login'])){
$username = $_POST['txt_username'];
$password = $_POST['txt_pass'];
$guest = new User();
if($username == "")
{
echo "Enter username please";
}
if($password == "")
{
echo "Enter password please";
}
if($guest->login($username, $password)){
$guest->redirect('profile');
}
else{
echo "Invalid Entry";
}
}
require_once 'layouts/header.php';
?>
<div class="container">
<div class="row">
<h1>Sign In</h1>
<form action="" method="POST">
<div class="form-group">
<label>Username</label>
<input type="text" name="txt_username" class="form-control" required/>
</div>
<div class="form-group">
<label>Password</label>
<input type="password" name="txt_pass" class="form-control" required/>
</div>
<button type="submit" name="btn_login" class="btn btn-primary">Log In</button>
</form>
</div>
</div>
A session had already been started - ignoring session_start() in /Applications/MAMP/htdocs/eli14/User.php on line 2