εχω φτιαξει μια πλατφορμα register-login με php.
και θελω οταν συνδεεται ενας χρηστης,κανοντας επιτυχημενα Log in,να τον ανακατευθυνει σε ενα Index.php αρχειο στο οποιο θα γραφει κατι σαν "welcome user <to_username_tou>" Και να εχει και την επιλογη του Log out. Αυτο θα γινει με χρηση sessions.οποτε εγω το επιχειρω με τον εξης τροπο:
index.php
- Κώδικας: Επιλογή όλων
<?php
session_start();
?>
<html>
<head>
</head>
<body>
<?php
if(!session_is_registered("username")){?>
<form action="login.php" method="post">
<b style="font-size:150%;">Log in</b><br/>
Username: <input type="text" name="username"/><br/>
Password: <input type="password" name="password"/><br/>
<input type="submit" value="Log in"/>
</form>
Don`t have an account?
<form action="register.php" method="post"><br/>
<b style="font-size:150%;">Register</b><br/>
Username: <input type="text" name="username"/><br/>
Password: <input type="password" name="password"/><br/>
Retype password: <input type="password" name="retype-password"/><br />
E-mail: <input type="email" name="email"/><br />
<input type="submit" value="Register" />
</form>
<?php }
else{
echo 'Welcome user ' . $_SESSION["username"] . '<br/><a href="logout.php">Log off</a>';
include ("upload.php");
}?>
<?php include ("system/footer.php"); ?>
</body>
</html>
login.php
- Κώδικας: Επιλογή όλων
<?php
session_start();
mysql_connect('localhost', 'root', 'password')
or die ("Error establishing database connection".mysql_error());
mysql_select_db('dbname')
or die ("Error establishing a database connection ".mysql_error());
$pass = hash("sha256", $_POST['password']);
$query = sprintf("SELECT * FROM users WHERE username='%s' and password='%s'", mysql_real_escape_string($user), mysql_real_escape_string($pass));
$result = mysql_query($query) ;
if($result){
session_register("username");
header("location:index.php");
}
else {
echo 'Wrong username or password!';
}
?>
θεωρω πως το εχω σωστο.γιατι ομως δεν το εμφανιζει το username?
ευχαριστω εκ των προτερων για οποιαδηποτε βοηθεια!