Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    41

    Funzione mysql_fetch_array()

    Salve a tutti; ho un problema con questo codice:

    codice:
    $q1="SELECT * FROM utente where Nome='".$_POST['casa']."'";
    $q = trim(stripslashes($q1));
    $result = mysql_query($q);   
    $row=mysql_fetch_array($result);
    
    if(!$row)
    {
     echo "
    
    Non sono presenti righe</p>";
    }
    else
    {
     while ($row)
     {
     $codice = $row[mysql_field_name($result,0)];
     echo $codice;
     }
    }
    Questo codice mi da problemi quando arrivo al while; ho provato a cercare un'altra soluzione in questo modo:
    codice:
    $q1="SELECT * FROM utente where Nome='".$_POST['casa']."'";
    $q = trim(stripslashes($q1));
    $result = mysql_query($q);   
    $row=mysql_fetch_array($result);
    
    if(!$row)
    {
     echo "
    
    Non sono presenti righe</p>";
    }
    else
    {
     while ($row=mysql_fetch_array($result))
     {
     $codice = $row[mysql_field_name($result,0)];
     echo $codice;
     }
    }
    ma non funziona neanche questa

    Mi dite cosa ho sbagliato, e come devo eseguire correttamente questo codice?

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503

    Re: Funzione mysql_fetch_array()

    Codice PHP:
    $q1="SELECT * FROM utente where Nome='".$_POST['casa']."'";
    //la query la costruisci tu qui sopra, non serve il trim, basta che la scrivi correttamente
    $q trim(stripslashes($q1));
    $result mysql_query($q);   
    $row=mysql_fetch_array($result); //qui ti sei giocato leventuale risultato

    if(!$row)
    {
     echo 
    "

    Non sono presenti righe</p>"
    ;
    }
    else
    {
     
    //se avevi trovato solo 1 corrispondenza, qui non la trovi più, è stata consumata
     //dal mysql_fetch_array($result) precedente
     
    while ($row=mysql_fetch_array($result))
     {
     
    //non serve fare questa assegnazione
     
    $codice $row[mysql_field_name($result,0)];
     echo 
    $codice;
     }

    Il modo giusto di procedere è questo
    Codice PHP:
    $q "SELECT * FROM utente where Nome='".$_POST['casa']."'";
    $q stripslashes($q);
    $result mysql_query($q);

    if(
    mysql_num_rows($result) == 0)
    {
        echo 
    "

    Non sono presenti righe</p>"
    ;
    }
    else
    {
        while(
    $row mysql_fetch_array($result))
        {
            echo 
    $row[mysql_field_name($result,0)];
            
    //se sai come si chiama la colonna che ti interessa usa questa riga
            // echo $row['nome_colonna'];
            // e sostituisci mysql_fetch_array con mysql_fetch_assoc
        
    }


  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    41
    grazie mille, ora il problema è risolto

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.