Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    89

    problema estrazione dati database

    ciao a tutti, io avrei bisogno di controllare che nome utente e password coincidano, in sostanza devo far accedere una persona ad una certa pagina.

    il nome utente è stato passato sotto la variabile $utente, la tabella si chiamalog_modifiche e i campi sono nome_utente e password.

    $record=mysql_query('select password from log_modifiche where nome_utente=$utente');

    è giusta la query? purtroppo non mi seleziona nulla, ho fatto degli errori?

  2. #2
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    764
    ossia cosa ti restituisce?
    qualche errore?

    Codice PHP:
    //connessione al db
    $link mysql_connect("localhost""mysql_user""mysql_password");
    if (!
    $link) {
        die(
    "Not connected : " mysql_error());
    }

    $db_selected mysql_select_db("mio_database"$link);
    if (!
    $db_selected) {
        die (
    "Can't use foo : " mysql_error());
    }

    $record=mysql_query('SELECT id FROM log_modifiche WHERE nome_utente='$utente' AND password='$password''); // o altro campo al posto di id 
    eXvision

  3. #3
    Probabilmente devi aggiungere gli apici al campo nome_utente che sicuramente è un varchar:

    Codice PHP:
    $record=mysql_query("select password from log_modifiche where nome_utente='$utente' "); 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    89
    ho provato con le modifiche che mi avete segnalato, il problema non cambia, penso però di aver trovato l'errore (almeno credo).

    Penso sia nella fase successiva all'interrogazione:
    Codice PHP:
    $record=mysql_query("select password from log_modifiche where nome_utente='$utente'");     
    $risultati mysql_fetch_array($record); 
    In sostanza lui ha trovato qualcosa perchè se chiedo di mostrare record dice recource id#4, però quando poi vado a chiedere di mostrare risultati non visualizza nulla.

    Premetto che (come vedete) chiedo solo la password quindi solo un dato, pertanto non è un array e forse fetch_array non va bene, può essere per quello? che devo usare?

  5. #5
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    764
    fai un var_dump della variabile
    eXvision

  6. #6
    Potrebbe essere che con il nome utente scelto effettivamente non dia risultati?
    Prova la query dierttamente in phpmyadmin o da consolle

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    89
    ho fatto il var_dump, e come credevo il problema non sta nella query, ma successivamente, cioè nel mysql_fetch_*(); perchè la variabile a cui assegno la query contiene una risorsa (rescource id#4), mentre quando vado ad assegnare il contenuto di questa risorsa ad una variabile (con il fetch) la variabile rimane vuota.

    Ora io ho semplificato il codice inserendo invece della variabile passata dopo il where (che comunque ho verificato essere corretta) il valore sotto forma di stringa (andrea). Lo stesso valore sono sicurissimo ci sia in 'associazione'/'log_modifiche' perchè ce l'ho qui davanti!

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    89
    RISOLTO RAGAZZI!!!

    in pratica ieri sera, dormendo in piedi probabilmente, ho inserito uno spazio e così quando andava a richiamare trovave i campi, ma ovviamente non erano uguali...

    Grazie mille per l'aiuto perchè non ci sarei mai arrivato senza i vostri consigli, grazie!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.