Visualizzazione risultati 1 fino 7 di 7

Discussione: [php/mysql] Controllare se esiste un utente

  1. #1
    Guest

    Predefinito [php/mysql] Controllare se esiste un utente

    Buonasera, rompo anche oggi ^^

    Ho creato uno script che consente di registrare in un db mysql gli utenti, ricevendoi dati da un form, ed un altro form per eseguire il login.

    Sono riuscito a verificare le password, ma non riesco a far verificare al server se il nome dell'utente che tenta il login esiste nel db o no, anzi, ci sono riuscito per metà.

    Quindi, dopo aver effettuato la corretta connessione al db, ho inserito questo script:

    Codice PHP:

    $sqlquery
    = "SELECT * FROM $tabellasiti WHERE username = '".$username."'";
    $result = mysql_query($sqlquery);

    if (
    $result="0"){
    echo
    "il nome utente non esiste";
    }else{
    echo
    "il nome utente esiste";
    }
    Se il nome utente esiste, lo script è corretto. Se non esiste, la pagina rimane completamente bianca.

    Sicuramente è sbagliato quel "if ($result="0")", ma non so come cambiarlo poichè ho provato ="0", =="0", =0, ==0, ="" etc...

  2. #2
    programmazioned non è connesso Utente attivo
    Data registrazione
    25-03-2008
    Messaggi
    440

    Predefinito

    Sei sicuro di aver capito bene il funzionamento di mysql_query()?
    Comunque dai un'occhiata anche a mysql_num_rows()
    Ciao!
    Ultima modifica di programmazioned : 10-04-2009 alle ore 18.03.45

  3. #3
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Come ti ha suggerito programmazioned basta utilizzare mysql_num_rows():

    Codice PHP:
    $sqlquery = "SELECT * FROM $tabellasiti WHERE username = '".$username."'";
    $result = mysql_query($sqlquery);

    if (
    mysql_num_rows($result) == "0"){
    echo
    "il nome utente non esiste";
    }else{
    echo
    "il nome utente esiste";
    }
    Apprezzi l'aiuto? Offrimi un caffè!

  4. #4
    Guest

    Predefinito

    No, non sono sicuro

    Grazie, funziona. Non sapevo dell'esistenza di quella funzione del php ;) (ne saprò forse un millesimo!!!)

    Grazie ancora, semplice ed esaustivo ;)

    EDIT:

    @miky: ho fatto così:

    Codice PHP:
    $sqlquery = "SELECT * FROM $tabellasiti WHERE username = '".$username."'";
    $result = mysql_query($sqlquery);
    $num_righe = mysql_num_rows($result);

    if (
    $num_righe<1){
    echo
    "il nome utente nn esiste";
    }else{
    echo
    "il nome utente esiste";
    }
    [/QUOTE]

    Ciao ;)
    Ultima modifica di NokiaN70 : 10-04-2009 alle ore 18.07.48

  5. #5
    Guest

    Predefinito

    Raga approfitto di questo spazio per chiedere anche io una cosa.
    Ho fatto il seguente script per verificare se l'utente è già presente nel db
    Codice PHP:
    $controllo_utente = "SELECT * FROM mycurriculum_utenti WHERE usr= '$usr' ";
    echo
    $controllo_utente;
    $query = mysql_query($controllo_utente);


    // if ($check = mysql_query($controllo_utente))
    if (mysql_num_rows($query) == "0")
    {
    // echo" <img src=\"http://forum.it.altervista.org/images/spaziatore.gif\" width=\"1\" height=\"1\" onload=\"makerequest('ok.php','div_usr')\"> ";
    $controllo_usr = true;
    }else
    {
    // Il nick è già stato preso!
    $controllo_usr = false;
    // echo" <img src=\"http://forum.it.altervista.org/images/spaziatore.gif\" width=\"1\" height=\"1\" onload=\"makerequest('no.php','div_usr')\"> ";
    }

    echo
    "<br> usr : $controllo_usr <br>";
    tuttavia non funziona! ( non si entra nemmeno nell'iff, lo noto perchè alla fine stampo a video la variabile $controllo_usr e non ha nessun valore ( ne vero ne falso)

  6. #6
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Codice PHP:
    if (mysql_num_rows($query) == "0")
    mysql_num_rows dovrebbe restiture un numero intero e non una stringa, prova così:
    Codice PHP:
    if (mysql_num_rows($query) == 0)

  7. #7
    Guest

    Predefinito

    Come non detto funziona in entrambi i casi. Pensavo che una variabile booleana impostata su false mi desse 0, invece da valore nullo.
    Grazie mille

Regole di scrittura

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