récupérer une variable apres le Login
Posté : 10 août 2011, 10:24
Bonjours ! Comment allez vous ?
Donc voila j'ai un tout petit soucis qui me fait vraiment.... Bref, comme le sujet l'indique, je voudrais savoir comment récupérer la variable $username une fois la personne s'être connecté sur mon site.
Le code qui doit (normalement je pense) récupérer la variable :
Alors, je n'ai pas trop envis de surcharger mon message et comme j'ai de nombreux fichier, mais pour m'aider vous en aurez besoins donc je vais essayer de ranger sa clean au maximum.
Page : Index.php
Page: includes/functions.inc.php
Page: includes/login.inc.php
Et aussi, j'ai retiré les script HTML pour laisser plus visible pour vous.
Merci beaucoup d'avance pour votre aide !
Donc voila j'ai un tout petit soucis qui me fait vraiment.... Bref, comme le sujet l'indique, je voudrais savoir comment récupérer la variable $username une fois la personne s'être connecté sur mon site.
Le code qui doit (normalement je pense) récupérer la variable :
if (check_login_status() == true) {
echo "Salut ".$username.", ça va?";
}
donc sa me dit : Notice: Undefined variable: username on line 85Alors, je n'ai pas trop envis de surcharger mon message et comme j'ai de nombreux fichier, mais pour m'aider vous en aurez besoins donc je vais essayer de ranger sa clean au maximum.
Page : Index.php
<?php
// Start session
session_start();
// Include required functions file
require_once('includes/functions.inc.php');
?>
<?php
if (check_login_status() == true) {
}
else{
echo '
<form method="post" action="includes/login.inc.php">
<div class="login">
<div class="textfield" style="position: relative; left: 10; top: 60;"><input name="username" type="text" maxlength="25"></div>
<div class="textfield" style="position: relative; left: 10; top: 79;"><input name="password" type="password" maxlength="25"></div>
<img src="images/space.png" border="0" style="position: relative; left: 10; top: 84;">
<input type="image" src="images/button_login.png" alt="Sign In" style="position: relative; left: 10; top: 84;">
</div>
</form>
';
}
?>
<?php
if (check_login_status() == true) {
echo "Salut ".$username.", ça va?";//LIGNE 85
}
?>
Page: includes/functions.inc.php
<?php
/**
*
* @file /includes/functions.inc.php
*/
/**
* Redirects to specified page
*
* @param string $page Page to redirect user to
* @return void
*/
function redirect($page) {
header('Location: ' . $page);
}
/**
* Check login status
*
* @return boolean Login status
*/
function check_login_status() {
// If $_SESSION['logged_in'] is set, return the status
if (isset($_SESSION['logged_in'])) {
return $_SESSION['logged_in'];
}
return false;
}
?>
Page: includes/login.inc.php
<?php
// Include required MySQL configuration file and functions
require_once('config.inc.php');
require_once('functions.inc.php');
// Start session
session_start();
// Check if user is already logged in
if ($_SESSION['logged_in'] == true) {
// If user is already logged in, redirect to main page
redirect('../index.php');
} else {
// Make sure that user submitted a username/password and username only consists of alphanumeric chars
if ( (!isset($_POST['username'])) || (!isset($_POST['password'])) OR
(!ctype_alnum($_POST['username'])) ) {
redirect('../index.php');
}
// Connect to database
$mysqli = @new mysqli(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
// Check connection
if (mysqli_connect_errno()) {
printf("Unable to connect to database: %s", mysqli_connect_error());
exit();
}
// Escape any unsafe characters before querying database
$username = $mysqli->real_escape_string($_POST['username']);
$password = $mysqli->real_escape_string($_POST['password']);
// Construct SQL statement for query & execute
$sql = "SELECT * FROM users WHERE username = '" . $username . "' AND password = '" . md5($password) . "'";
$result = $mysqli->query($sql);
// If one row is returned, username and password are valid
if (is_object($result) && $result->num_rows == 1) {
// Set session variable for login status to true
$_SESSION['logged_in'] = true;
redirect('../index.php');
} else {
// If number of rows returned is not one, redirect back to login screen
redirect('../index.php');
}
}
?>
Voila les 3 scripts (je met pas le script qui permet la connection au SQL car pas besoin pour se post)Et aussi, j'ai retiré les script HTML pour laisser plus visible pour vous.
Merci beaucoup d'avance pour votre aide !