Visualizzazione risultati 1 fino 21 di 21

Discussione: Warning: mysql_fetch_array

  1. #1
    Guest

    Predefinito Warning: mysql_fetch_array

    Ciao, avrei bisogno di aiuto,
    l'errore è :

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /web/htdocs/www.xxx.com/home/areariservata/ARstati.php on line 72


    <?
    mysql_select_db($db_name, $db);
    $sql = "SELECT * FROM stati WHERE nome != 'Italy' ORDER BY nome";
    $result = mysql_query($sql, $db);

    If ($msg == 1) {

    RIGA 72 : while($row = mysql_fetch_array($result)) {


    Le tabelle nel db ci sono, quella stati no, c'è stato, ho provato ha cambiare ma nn funge lo stesso, perchè non và?
    Grazie.

  2. #2
    Guest

    Predefinito

    Non si capisce molto.
    Posta l'intero script, usando gli appositi tag [ php] e [/ php]


    Ciao!

  3. #3
    Guest

    Predefinito

    se $result e' false, ovviamente ti dara' errore, e false puo' tornare nel caso query non ha dato risultati
    prova cosi'
    Codice PHP:
    if(!$result)
    echo
    "Errore: ricerca non ha dato risultati";
    else
    {
    while(
    $row = mysql_fetch_array($result)) {.....}
    }
    Ultima modifica di amvnews : 18-11-2008 alle ore 13.08.12

  4. #4
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Citazione Originalmente inviato da amvnews Visualizza messaggio
    se $result e' false, ovviamente ti dara' errore, e false puo' tornare nel caso query non ha dato risultati
    prova cosi'
    Codice PHP:
    if(!$result)
    echo
    "Errore: ricerca non ha dato risultati";
    else
    {
    while(
    $row = mysql_fetch_array($result)) {.....}
    }
    Non è proprio così, perché in realtà se la query non restituisce risultati $result è un recordset valido con zero righe. Quindi, è la chiamata a mysql_fetch_array che restituisce false, con il conseguente salto del ciclo.

    L'errore che hai fatto è nella query stessa, scritta male: in MySQL il simbolo "non uguale" si scrive con <> (minore, maggiore) e non con != (punto esclamativo, uguale).

    Statemi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  5. #5
    Guest

    Predefinito

    mmm, no, sbagliato, si può scrivere anche !=


    Ciao!

  6. #6
    Guest

    Predefinito

    Aggiungio un or die(mysql_error()); dopo la query e dicci cosa ti viene restituito.

  7. #7
    Guest

    Predefinito

    Ciao raga,
    questo e l'errore

    Parse error: syntax error, unexpected T_LOGICAL_OR in /web/htdocs/www.xxx.com/home/areariservata/ARstati.php on line 50

    EDIT: Sempre io, Cerco di nn sbagliare :
    Codice PHP:
    <?
    mysql_select_db
    ($db_name, $db);
    $sql = "SELECT * FROM stati WHERE nome != 'Italy' ORDER BY nome"; or die(mysql_error());
    $result = mysql_query($sql, $db);

    If (
    $msg == 1) { ?>
    </span>
    <table width="100%" border="0" cellspacing="0" cellpadding="1">
    <tr>
    <td height="22" valign="top" bgcolor="#CCCCCC"><div align="center" ><strong>1 record eliminato dal database con successo.</strong></div></td>
    </tr>
    </table>
    <span >
    <? }?>
    </span>
    <table width="100%" border="0" align="center" cellpadding="2" cellspacing="0" bordercolor="#A9A9A9">
    <tr>
    <td height="18" colspan="3" bgcolor="#CCCCCC"><div align="right" ><a href="ARstati.php?action=inserisci"><img src="icons/add16.png" width="16" height="16" border="0"></a><a href="ARstati.php?action=inserisci" ><strong> Inserimento nuovo Stato\Nazione</strong></a> </div></td>
    </tr>
    <tr >
    <td width="626" bgcolor="#E6E6E6"><div align="center" ><strong>Stato</strong></div></td>
    <td width="69" bgcolor="#E6E6E6"><div align="center" ><strong>Modifica</strong></div></td>
    <td width="56" bgcolor="#E6E6E6"><div align="center" ><strong>Elimina</strong></div></td>
    </tr>
    <? while($row = mysql_fetch_array($result)) { ?>
    ...::: Help :::...
    Ultima modifica di debug : 19-11-2008 alle ore 10.08.32

  8. #8
    Guest

    Predefinito

    $sql = "SELECT * FROM stati WHERE nome != 'Italy' ORDER BY nome";
    $result = mysql_query($sql, $db) or die(mysql_error());


    Ciao!

  9. #9
    Guest

    Predefinito

    Ciao raga,
    Ora mi ha questo errore:

    Parse error: syntax error, unexpected ';' in /web/htdocs/www.xxx.com/home/areariservata/ARstati.php on line 71

    linea 71:

    <? while($row = mysql_fetch_array($result) or die(mysql_error()); { ?>

    Cmq, Se c'è qualcuno molto più esperto di me, che voglia riprendersi un "lavoro pagato" riparare un sito, mi contatti grazie : beat.master@hotmail.it

  10. #10
    Guest

    Predefinito

    Cancella il punto e virgola da quella riga.


    Ciao!

  11. #11
    Guest

    Predefinito

    Ciao,
    si l'avevo tolta:

    <? while($row = mysql_fetch_array($result) { ?>

    io l'ho fatta cosi...

  12. #12
    Guest

    Predefinito

    Ora ti manca una parentesi tonda che chiude... (fai solo quello che ti scriviamo!)


    Ciao!

  13. #13
    Guest

    Predefinito

    Ciao, perfetto grazie :D, un ultima cosa, mi dice: Unknown column 'nome' in 'order clause' ,cioè dimmi se sbaglio, nel db le tab nn sono ordinate x "nome"?

  14. #14
    Guest

    Predefinito

    No, dice che in quella tabella non esiste il campo nome o un alias chiamato così.


    Ciao!

  15. #15
    Guest

    Predefinito

    Grazie di tutto DE :D
    ora mentre andavo avanti nelle riparazioni, mi sono imbattuto in:

    Parse error: syntax error, unexpected $end in /web/htdocs/www.xxx.com/home/areariservata/ARcomuni.php on line 184

    Ma nella riga 184 nn c'è niente, è l'ultima, e se nn sbaglio è xchè nn ho chiuso qualcosa giusto?
    Ultima modifica di giazbeatmaster : 19-11-2008 alle ore 14.48.39

  16. #16
    Guest

    Predefinito

    Probabilmente ti manca un } alla fine di qualche if o di qualche while.

  17. #17
    Guest

    Predefinito

    L'errore è alla riga 103, dove c'è:

    $row = mysql_fetch_array($result); or die(mysql_error());

    ---------------------------------------------------------------
    <? If ($action == "profilo") {
    $idCliente = $_GET['idCliente'];
    mysql_select_db($db_name, $db);
    $sql = "Select * FROM clienti where idCliente=" .$idCliente;
    $result = mysql_query($sql, $db);
    $row = mysql_fetch_array($result); or die(mysql_error());
    ?>

    Perche?
    Ciao.

  18. #18
    Guest

    Predefinito

    e 2: manca la } a fine script


    ciao!

  19. #19
    Guest

    Predefinito

    Ho provato ma non và, se metto { mi dà sempre lo stesso errore, ma se cambio la riga :

    $row = mysql_fetch_array($result); or die(mysql_error());
    in:
    $row = mysql_fetch_array($result) or die(mysql_error());
    togliendo il ;

    torna a darmi l'errore:
    Parse error: syntax error, unexpected $end in /web/htdocs/www.xxx.com/home/areariservata/ARclienti.php on line 166, dove la linea 166 e l'ultima della pagina.

  20. #20
    Guest

    Predefinito

    <?
    If ($action == "profilo") {
    $idCliente = $_GET['idCliente'];
    mysql_select_db($db_name, $db);
    $sql = "Select * FROM clienti where idCliente=" .$idCliente;
    $result = mysql_query($sql, $db) or die(mysql_error());
    $row = mysql_fetch_array($result);
    }
    ?>


    Ciao!

  21. #21
    Guest

    Predefinito

    Grazie Debag Sei un Mostro :D

Regole di scrittura

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