Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Resourche id#

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    22

    Resourche id#

    Salve a tutti! volevo crare una funzione che, attraverso l'id letto da un cookie, mi leggesse il nome e cognome dal database per poi ristamparlo....
    il problema è che poi mi rende:

    codice:
    ciao Resource id #6 Resource id #7
    il codice è questo:
    Codice PHP:
    <?php
    require("config.php"); //connesione al database
    function identita()
    {
    $log_id $_COOKIE['id_utente'];
    $nome mysql_query("SELECT nome FROM `utenti` WHERE id ='$log_id'");
    $cognome mysql_query("SELECT cognome FROM `utenti` WHERE id ='$log_id'");
    echo 
    "ciao $nome $cognome";

    }
    ?>
    come mai???

    se eseguo il sql dando un valore a $log_id phpmyadmin mi rende fuori il valore giusto

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Prima cosa ecco il perché del tuo problema
    Codice PHP:
    $nome mysql_fetch_assoc(mysql_query("SELECT nome FROM `utenti` WHERE id ='$log_id'"));
    $cognome mysql_fetch_assoc(mysql_query("SELECT cognome FROM `utenti` WHERE id ='$log_id'"));
    echo 
    "ciao $nome['nome'] $cognome['cognome']"
    Ti mancava il mysql_fetch_assoc()
    Tra l'altro di query ne basta 1 non ne servono 2
    Codice PHP:
    $dati mysql_fetch_assoc(mysql_query("SELECT nome,cognome FROM `utenti` WHERE id ='$log_id'"));
    echo 
    "ciao $dati['nome'] $dati['cognome']"
    Nel tuo codice però potresti avere un altro problema, assicurati che l'id sia una stringa, perché se nel db è definito come int devi togliere gli apici attorno a $log_id nelle query.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    22
    si è int auto incrementato...ho trovato questa soluzione funzionante :

    Codice PHP:
    <?php
    function identita()
    {
    $log_id $_COOKIE['id_utente'];
    $dati mysql_query("SELECT nome,cognome FROM `utenti` WHERE id =$log_id");
    while(
    $row=mysql_fetch_array($dati)) {
                     echo(
    " ".$row["nome"]." ".$row["cognome"]."");}

    }
    ?>
    grazie mille

  4. #4
    Se estrai un solo record, non ha senso usare un ciclo while().

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    22
    interessante quanto vera la tua affermazione...quindi come posso procedere?

  6. #6
    Rimuovendo il ciclo while().
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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 © 2025 vBulletin Solutions, Inc. All rights reserved.