Salve,
sto cercando di recuperare, oltre la user che funziona, i dati relativi a un utente connesso (e-mail, indirizzo, ecc.) e metterle in sessione (spero sia il procedimento corretto per recuperare le info di un utente e metterle in una pagina "informazioni utente") ma non so perchè mi recupera solo la user
Codice PHP:
<?php
//Avvio o continuo la sessione
session_start();
//Controllo che la sessione sia attiva
if(!IsSet($_SESSION['logged'])){
//Controllo se l' utente vuole loggarsi
//Recupero i valori da una Form
$user_name = @$_POST['user_name'];
$user_pass = @$_POST['user_pass'];
//Controllo se la user_name e la user_pass sono vuoti
if((!strlen($user_name) != 0) and (!strlen($user_pass) != 0) and $_POST['login']=="ok"){
$errori[0] = "La [b]Username[/b] e la [b]Password[/b] sono obbligatori";
return $errori;
}
//Controllo se l' user_name e la user_pass non sono vuoti
if((!strlen($user_name) == 0) and (!strlen($user_pass) == 0)){
//Effettuo il controllo dei dati
$strSQL = "SELECT * FROM tbl_users WHERE user_name = '".$user_name."'";
$strSQL .= " AND user_pass = MD5('".$user_pass."')";
$result = mysql_query($strSQL);
$row = mysql_fetch_row($result);
//Controllo se l' utente e' stato trovato
if(!strlen($row[0]) == 0){
/*Effettuo il Login:
* Array di sessione
* Contenente UserID e LastAccess
*/
$myArray = array($row[0], $row[7]);
/*Controllo che l' utente non sia già attivo
* Verifico che siano trascorsi almeno 5 minuti
* dall' ultima connessione
*/
if(fDateDiff($myArray[1], time(), 'm') <= 1){
$login_err = "<div id=\"margine-error-01\">[b]Attenzione[/b], la sesssione per questo utente è ";
$login_err .= "già attiva sul sito.
";
$login_err .= "Attendi [b]1[/b] minuto per ripetere il Login.";
$login_err .= " Grazie</div>";
}else{
//Effettuo il Login
$_SESSION['logged'] = $myArray;
$_SESSION['user_name'] = $user_name;
}
}
// Controllo che l'utente inserisca dati corretti e coincidenti
if((!strlen($user_name) == 0) and (!strlen($user_pass) == 0)){
//Effettuo il controllo dei dati
$strSQL = "SELECT * FROM tbl_users WHERE user_name = '".$user_name."'";
$strSQL .= " AND user_pass = MD5('".$user_pass."')";
$result = mysql_query($strSQL);
$row = mysql_fetch_row($result);
//Controllo se l' utente e' stato trovato
if(!strlen($row[0]) != 0){
$errori[1] = "[b]Attenzione[/b] i dati inseriti non sono validi!";
return $errori;
}
}
//Recupero i dati utente e li metto in sessione
$strSQL = "SELECT * FROM tbl_users";
$result = mysql_query($strSQL);
$row = mysql_fetch_row($result);
$_SESSION['user_email'] = $row['user_email'];
//Libero la memoria
mysql_free_result($result);
}
}else{
//Controllo se aggiornare l' ultima data di accesso
if(fDateDiff($_SESSION['logged'][1], time(), 'm') > 1){
$strSQL = "UPDATE tbl_users SET user_lastaccess = ".time();
$strSQL .= " WHERE user_id = ".$_SESSION['logged'][0];
//Aggiorno la sessione
$_SESSION['logged'][1] = time();
mysql_query($strSQL);
}
}
if(@$_GET['logout'] == bye){ //Effettuo il Logout
$_SESSION = array(); //Desetto tutte le variabili di sessione
session_destroy(); //Distruggo le sessioni
header('Location: index.php');
}
?>