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

Discussione: Mysql_fetch_array

  1. #1
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782

    Mysql_fetch_array

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\programmi\easyphp1-8\www\ricerca\ricerca.php on line 36
    "select * from utente WHERE nome=matteo AND 0=0"

    vi posto il codice incriminato:

    Codice PHP:
    $query='"'.$query." WHERE ".$cond."0=0".'"'//creazione where attraverso dati passati dalla form
    $ris=mysql_query($query); //eseguo la select
    print $ris//la stampo ed è giusta
    while ($rigamysql_fetch_array($ris)){ //riga 36 mi da l'errore scritto sopra 

  2. #2
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    Matteo è una stringa quindi deve essere inserito tra gli apici, altrimenti la query non funziona.

    "select * from utente WHERE nome='matteo' AND 0=0"

    I nomi dei campi e della tabella invece non devono essere messi tra apici
    Ciao
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

  3. #3
    Hai controllato se la query non da come risultato 0 righe?
    metti la @ prima di mysql_fetch_array così @mysql_fetch_array.

    e prima dovresti controllare se mysql_num_rows($ris) > 0


  4. #4
    Utente di HTML.it L'avatar di miki.
    Registrato dal
    Oct 2004
    Messaggi
    1,918
    Originariamente inviato da Toxik
    Hai controllato se la query non da come risultato 0 righe?
    metti la @ prima di mysql_fetch_array così @mysql_fetch_array.

    e prima dovresti controllare se mysql_num_rows($ris) > 0

    anche se da come risultato 0, non da l'errore il codice come l'ha scritto lui, il problema e' quello scritto da sky
    You cannot discover new oceans unless you have the courage to lose sight of the shore

    Caro Dio, quando nelle preghiere ti chiedevo di far morire quel pedofilo truccato, liftato,mentalmente disturbato e di colore indefinibile, non intendevo Michael Jackson.

  5. #5
    infatti non avevo letto bene l'errore

    Cmq il mio era un consiglio, dato che prima di estrapolare i risultati da un database è meglio controllare se questi ci siano...

  6. #6
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    si si di quello me ne sono accorto (gli apici) difatti l'avevo cambioato pero l'errore riomane lo stesso. il campo è presente all'interno del db perche è l'unico inserito (sto provando se funziona) cmq faro lo stesso il controllo..

    dimenticavo una cosa forse importante. se io non compilo alcun campo della form che invia i dati mi viene estratta la riga presente nel db...

  7. #7
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    nada?

  8. #8
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    "select * from utente WHERE nome=matteo AND 0=0"

    dalla tua query dovresti avere 2 campi nel db:

    nome

    0

    ma hai un campo solo hai detto, e cioè nome (presumo)

    $query='"'.$query." WHERE ".$cond."0=0".'"'; //creazione where attraverso dati passati dalla form

    dov'è l' AND ???

    sarebbe cosa buona e giusta se ci si abituasse almeno in fase di test a fare un pò di debug, visto che gli strumenti ci sono....

    $ris=mysql_query($query) or die(mysql_error()); //eseguo la select

    così almeno vedi che errore ti restituisce mysql





    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  9. #9
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    Codice PHP:
    <?php

    // ****** ricevo i dati dalla form e controllo lunghezza vettore ******
    $connessione mysql_connect("localhost""root")  or die("Connessione non riuscita: " mysql_error());
    mysql_select_db("ricerca"$connessione);
    $nome=$_POST['nome'];
    $cognome=$_POST['cognome'];
    $localita=$_POST['localita'];

    $cond='';
    $query='select *from utente';

    foreach(
    $_POST as $key=>$value)
    {
        if(
    $value!="")
        {
            if(
    $key!="Invia Ricerca")
                
    $cond $cond."$key='$value' AND ";
        }

    }

    if(
    $cond!='')  
        
    $query='"'.$query." WHERE ".$cond."0=0".'"';

    $ris=mysql_query($query) or die(mysql_error());
    print 
    $ris;
    while (
    $rigamysql_fetch_array($ris)){
            
    $id=$riga['id'];
            
    $nome=$riga['nome'];
            
    $cognome=$riga['cognome'];
            
    $localita=$riga['localita'];
                } 
            
    //print $cond;
    print $query;
    AND è contenuto nella variabile $cond
    Mi genera questo errore
    nel mio DB ci sono 4 campi:
    ID int auto increment
    nome varchar
    cognome varchar
    localita varchar

    se lascio i campi della form vuota mi restituisce i risultati estratti dal db correttamente

  10. #10
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    dottwatson riesci a trovare la causa? te ne sarei gratissimo

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.