Visualizzazione risultati 1 fino 5 di 5

Discussione: [php/MySQL]problema while in login

  1. #1
    Guest

    Predefinito [php/MySQL]problema while in login

    allora ho creato un login per un broswer game
    Codice PHP:
    session_start();
    if($_SESSION['log'] == "0") {
    if(isset($_POST['log'])) {
    $username=htmlentities(mysql_real_escape_string($_POST['username']));
    $password=htmlentities(mysql_real_escape_string($_POST['password']));
    if($username == "" or $password == "") {
    errore("1","Compila tutti i campi!");
    } else {
    db($db);
    $crypt_pass=md5($password);
    $query="SELECT * from user WHERE username = '$username' AND password = '$crypt_pass'";
    $risultato=mysql_query($query);
    $num_righe=mysql_num_rows($risultato);
    if($num_righe) {
    $row_user=mysql_fetch_array($risultato);
    if($row_user[attivo] == "0") {
    errore("1","Non hai ancora confermato la tua email!");
    } elseif($row_user[attivo] == "1") {
    errore("1","Hai confermato l'email pero non hai ancora fondato la tua citta!");
    } elseif($row_user[attivo] == "2") {
    $id=$row[id];
    $query="SELECT * from citta WHERE propietario = '$username' AND id_proprietario = '$id'";
    $risultato=mysql_query($query);
    $_SESSION['log']="1";
    $_SESSION['username']=$row_user[username];
    $_SESSION['email']=$row_user[email];
    $_SESSION['data_registrazione']=$row_user[data_registrazione];
    $_SESSION['popolo']=$row_user[popolo];
    $citta=0;
    while($row_citta=mysql_fetch_array($risultato)) {
    $citta++;
    $_SESSION['citta']=$citta;
    $_SESSION['nome_citta_$citta']=$row_citta[nome];
    $_SESSION['x_citta_$citta']=$row_citta[x];
    $_SESSION['y_citta_$citta']=$row_citta[y];
    $_SESSION['pop_citta_$citta']=$row_citta[popolazione];
    $_SESSION['oro_citta_$citta']=$row_citta[oro];
    $_SESSION['grano_citta_$citta']=$row_citta[grano];
    $_SESSION['legno_citta_$citta']=$row_citta[legno];
    $_SESSION['pietra_citta_$citta']=$row_citta[pietra];
    }
    ok("0","Login avvenuto con successo!");
    }
    } else {
    errore("1","Combinazione username/password sbagliata!");
    }
    }
    } else {?>
    <form method="post">
    <input type="hidden" name="log" />
    <table width="240" border="0">
    <tr>
    <td width="89">Username:</td>
    <td width="144"><input name="username" type="text" /></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><input name="password" type="password" /></td>
    </tr>
    <tr>
    <td colspan="2" align="center"><input type="submit" value="entra" /></td>
    </tr>
    </table>
    </form>
    <? }
    } else {
    header("Location: index.php");
    }
    spiego velocemente cosa dovrebbe fare
    fa dei normali controlli sui dati dopo verifica che l'utente ha confermato la email e in seguito imposta delle sessioni, esegue un while su un altra tabella impostando altre sessioni in base al numero di righe che trova nella tabella
    il problema:
    fino ad impostare il primo gruppo di sessioni ariiva ma dopo di che nn esegue corretamente il while e non imposta le sessioni
    come posso risolvere?
    grz in anticipo

  2. #2
    Guest

    Predefinito

    sicuro che si possa mettere una variabile come nome di una variabile di sessione come hai fatto tu?

  3. #3
    Guest

    Predefinito

    ho risolto
    sbagliavo la query
    comunque grazie mille

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da webeasy Visualizza messaggio
    ho risolto
    sbagliavo la query
    cioè?
    come hai risolto?

  5. #5
    Guest

    Predefinito

    la query scritta con un piccolo errore di sintassi, lo corretto e adesso funziona
    cmq grazie

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •