Jump to content

Cannot display username from session


Recommended Posts

HiHere is the login page

<?session_start();  session_register("login_session");  $username = "";$password = ""; if (isset($_POST["Username"]))   $username = $_POST["Username"];if (isset($_POST["Password"]))   $password = $_POST["Password"]; if ($username != "" && $password != "") {    $link = mysql_connect("localhost","root","root");   mysql_select_db("database");    $sql = "SELECT * FROM trainee WHERE password='";   $sql.= $password."' AND username='".$username."'";   $result = mysql_query($sql);    if (mysql_fetch_row($result) != false) { 	  $_SESSION["login_session"] = true;   if ($username = "trainee"){   header("Location: student.php");}	}else  echo '<script type="text/javascript">  window.onload=function(){alert("It is incorrect! Please enter again!");}  </script>';   mysql_close($link);}?>

Below is the form for login

<div class="sidebar">		  <div class="sidebar_item" id="login_form">			<p> </p>			<form method="post" action="login_stu.php">   <fieldset>   <legend align="center">Trainee Login</legend>			  <p>				<label for="ID"> Username:</label>				<input type="text" name="Username" />			  </p>			  <p>				<label for="PASSWORD"> Password:<br />				</label>				<input type="password" name="Password" />			  </p>	<p align="center">				<input type="submit" name="submit" value="Login" style="height:1.7em; width:3.5em;"/>	</p>	 </fieldset>			</form>		  </div>		</div>

I got a page requiring me to display the usernameAnd I have tried the following code but failed.

<?session_start();echo $_SESSION['username'];?>

<?session_start();echo $username;?>

Any idea? Thank you. :huh:

Link to post
Share on other sites

Since you never set $_SESSION['username'] equal to anything, it will only echo out null. Also, $username = "trainee" is silently failing because you are setting equal to and not testing if equal to. This is a remarkably common mistake of using = when you meant to use ==.

Link to post
Share on other sites

You could to check empty fields with php empty() function

if (isset($_POST["Username"]))   $username = $_POST["Username"];if (isset($_POST["Password"]))   $password = $_POST["Password"]; if ($username != "" && $password != "") {

to

if (isset($_POST['Username']) || isset($_POST['Password']) || !empty($_POST['Username']) || !empty($_POST['Password']) {//The POST username & passworx exist + not empty												  } else {//There was no username or password given}

Edited by Mudsaf
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...