• ModSenior

    Recuperare un dato dal database Mysql e passarlo in una sessione

    Ho una database strutturato cosi: id,username,password,grado
    allora il login funziona perfettamente solo che non ho la più pallida idea di fare in modo che dopo ke esegue la query_login ricavi il suo grado e lo passi alla sessione $sess_user_grado

    potete aiutarmi???GRAZIE

    [PHP]$sess_user_nick = $_POST['login_nick'];
    $sess_user_password = $_POST['login_pwd'];

    $query_login = mysql_query("SELECT * FROM fs_utenti WHERE username = '$sess_user_nick' AND password = '$sess_user_password'");
    if ($records= mysql_fetch_row($query_login)) {
    session_register("sess_user_nick");
    session_register("sess_user_password");
    } else {
    $err = 1;
    }[/PHP]


  • ModSenior

    nn credo sia impossibile e ke io sn negato


  • User Attivo

    $sess_user_nick = $_POST['login_nick'];
    $sess_user_password = $_POST['login_pwd'];

    $query_login = mysql_query("SELECT * FROM fs_utenti WHERE username = '$sess_user_nick' AND password = '$sess_user_password'");

    if ($records= mysql_fetch_row($query_login)) {
    session_register("sess_user_nick");
    session_register("sess_user_password");
    } else {
    $err = 1;
    }
    Così come hai scritto questo codice in primis attento poiché sei passibile di sql injection, comunque sorvolando sull'argomento sicurezza, pewrsonalmente dovresti fare così:

    $sess_user_nick = $_POST['login_nick'];
    $sess_user_password = $_POST['login_pwd'];
    
    $query_login = mysql_query("SELECT * FROM fs_utenti WHERE username = '$sess_user_nick' AND password = '$sess_user_password'");
    
    if ($records = mysql_fetch_array($query_login)) {
    session_start();
    $_SESSION("user_name") = $records['username'];
    $_SESSION("user_password") = $records['password'];
    $_SESSION("user_grado") = $records['grado'];
    } else {
    $err = 1;
    }  
    

    in questo modo hai 3 variabili di sessione inizializzate con i dati di cui hai bisogno!


  • ModSenior

    **in quel modo mi dava errore e ho fatto
    [PHP]$_SESSION("user_name") == $records['username'];
    $_SESSION("user_password") == $records['password'];
    $_SESSION("user_grado") == $records['grado'];[/PHP]
    **
    ma appena faccio il login mi salta fuori questo errore
    Fatal error
    : Call to undefined function: array() in /membri/freeesoccer/login.php on line 18


  • ModSenior

    help


  • ModSenior

    ho provato pure cosi ma nn trova i dati del grado

    [PHP]if ($_POST['entra'] != "") {

    Recuper i dati dal forrm

    $sess_user_nick = $_POST['login_nick'];
    $sess_user_password = $_POST['login_pwd'];

    $query_login = mysql_query("SELECT grado FROM fs_utenti WHERE username = '$sess_user_nick' AND password = '$sess_user_password'");
    if ($records= mysql_fetch_row($query_login)) {
    $_SESSION['username'] = "sess_user_nick";
    $_SESSION['password'] = "sess_user_password";
    $_SESSION['grado'] = $row["grado"];

    echo "$level --- $grado --- $sess_user_nick";

    } else {
    $err = 1;
    }
    }[/PHP]


  • ModSenior

    ci sono riuscito grazie lo stesso


  • User Attivo

    prova così:
    [php]
    if ($_POST['entra'] != "") {

    Recuper i dati dal forrm

    $sess_user_nick = $_POST['login_nick'];
    $sess_user_password = $_POST['login_pwd'];

    $query_login = mysql_query("SELECT grado FROM fs_utenti WHERE username = '$sess_user_nick' AND password = '$sess_user_password'");
    if ($records= mysql_fetch_row($query_login)) {
    $_SESSION['username'] = "sess_user_nick";
    $_SESSION['password'] = "sess_user_password";
    $_SESSION['grado'] = $records["grado"];

    echo "$level --- $grado --- $sess_user_nick";

    } else {
    $err = 1;
    }
    }
    [/php]