Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21

Discussione: Leggere dati Mysql

  1. #1

    Leggere dati Mysql

    Ciao ragazzi,
    ho un piccolo problema. In pratica quando un utente effettua il login nel "nuovo sito" dovrebbe apparire il suo avatar scelto nel forum oppure c'è quello di default. Ho utilizzato il seguente codice per collegare il db
    codice:
    include("Forum/config.php");
    $db = mysql_connect($dbhost, $dbuser, $dbpassword);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($dbname, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
           $query = "SELECT user_avatar FROM phpbb_users ORDER BY avatar DESC LIMIT 0,5";
    $result = mysql_query($query, $db);
    while ($row = mysql_fetch_array($result))
    { echo "<img src=\"$row\">" ; }
    mysql_close($db);
    Solo che dopo aver effettuato il login mi appare il seguente errore

    codice:
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\appserv\www\a\index.php on line 111
    Come mai? Dove sbaglio?

    Grazie, Saluti.

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Prova così:
    echo "<img src=\"$row[user_avatar]\">"; }

  3. #3
    Originariamente inviato da nicola75ss
    Prova così:
    echo "<img src=\"$row[user_avatar]\">"; }
    Niente da fare
    codice:
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\appserv\www\a\index.php on line 111
    Questa è la riga di codice presente alla linea 111
    codice:
    while ($row = mysql_fetch_array($result))
    Ciao e grazie per le risposte

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    $query = mysql_query("SELECT user_avatar FROM phpbb_users ORDER BY avatar DESC LIMIT 0,5)";

    while ($row = mysql_fetch_array($query))
    {
    $immagine = $row['user_avatar'];
    echo "<img src=\"$immagine\">" ;
    }


    Ricordati di dare il percorso nel tag img con il nome della cartella che contiene le immagini.
    Ciao.

  5. #5
    Ciao,
    Non c'è bisogno del percorso dato che è registrato nel database.
    Cmq non funziona...
    codice:
    include("Forum/config.php");
    $db = mysql_connect($dbhost, $dbuser, $dbpassword);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($dbname, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $query = "SELECT user_avatar FROM phpbb_users ORDER BY avatar DESC LIMIT 0,5";
    while ($row = mysql_fetch_array($query))
    {
    $immagine = $row['user_avatar'];
    echo "<img src=\"$immagine\">" ;
    }
    mysql_close($db);
    Sempre lo stesso errore alla linea 110
    codice:
    while ($row = mysql_fetch_array($query))
    Uff... Grazie per le risposte, Saluti.

  6. #6
    La variabile $query è una STRINGA, la funzione mysql_fetch_array() prende come parametro una RISORSA!

    cambia così:

    $qrySql=mysql_query($query);

    while ($row = mysql_fetch_array($qrySql)){

    ...

    }

  7. #7
    In genere questo errore lo dà quando la query restituisce un risultato vuoto, ossia $result non è valido.
    Controlla bene la query, che sia corretta, magari eseguendola a parte in phpMyAdmin e controllare se restituisca qualcosa o restituisca errore.
    Ciao
    Stefano Viscione,
    miosito.ilbello.com
    www.lucemsoft.it/

  8. #8
    Originariamente inviato da nonsoloC
    La variabile $query è una STRINGA, la funzione mysql_fetch_array() prende come parametro una RISORSA!

    cambia così:

    $qrySql=mysql_query($query);

    while ($row = mysql_fetch_array($qrySql)){

    ...

    }
    include("Forum/config.php");
    $db = mysql_connect($dbhost, $dbuser, $dbpassword);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($dbname, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $query = "SELECT user_avatar FROM phpbb_users ORDER BY avatar DESC LIMIT 0,5";
    $qrySql=mysql_query($query);
    while ($row = mysql_fetch_array($qrySql)){
    $immagine = $row['user_avatar'];
    echo "<img src=\"$immagine\">" ;
    }
    mysql_close($db);

    Ancora non và!!! Sempre stesso errore

    Saluti.

  9. #9
    Il percorso dell'immagine non c'entra niente perchè altrimenti non avrebbe dato errore mysql ma semplicemente non sarebbe stata visualizzata l'immagine.

    Quando ti capita di vedere un errore del genere di solto è perchè la query non è corretta (quindi, come detto, restituisce un risultato vuoto).

    Per ciò che riguarda la stringa e tutto il resto hai usato il procedimento corretto all'inizio

    Codice PHP:
    $result mysql_query($query$db);
    while (
    $row mysql_fetch_array($result)) 
    e poi hai corretto in modo errato (come ti è anche stato detto!:

    Codice PHP:
    $query "SELECT user_avatar FROM phpbb_users ORDER BY avatar DESC LIMIT 0,5";
    while (
    $row mysql_fetch_array($query)) 
    Detto questo passiamo a trovare l'errore.

    Innanzitutto devi riutilizzare il primo metodo per eseguire una query:
    Codice PHP:
    $result mysql_query($query$db);
    while (
    $row mysql_fetch_array($result)) 
    Ma così non sappiamo dove sia l'errore. Risolviamo in modo molto semplice aggiungendo un die e richiamando l'errore generato da php in questo modo:

    Codice PHP:
    $result mysql_query($query$db) or die( mysql_error() ) ;
    while (
    $row mysql_fetch_array($result)) 
    Adesso ti verrà restituito un errore nella query: postalo se non riesci a capire da solo dove sbagli! Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  10. #10
    Ahhh grazie mircov,
    L'errore è questo

    Unknown column 'avatar' in 'order clause'

    Grazie ancora, Saluti.

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.