Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di sandu
    Registrato dal
    Feb 2005
    Messaggi
    239

    problema con query e while ...

    ciao a tutti ho un problema con questa query e non capisco dov'è che sbaglio ....

    dunque ho una tabella chiamata prodotti con all'interno (tra le altre) le colonne nome e categoria

    vorrei selezionare tutti gli elementi con categoria "prodotti" ed elencarlne i nomi (senza doppioni)
    ho fatto così :

    <?php
    $query = "SELECT DISTINCT categoria FROM prodotti";
    $result = mysql_query($query);
    $row = mysql_fetch_array($result, MYSQL_ASSOC);
    while($row['categoria'] == prodotti )
    { echo "<a href=\"viewcat.php?nome={$row['nome']}\">- {$row['nome']} </a>
    ";}
    mysql_free_result($result);
    ?>

    il problema è che non lo realizza e alla fine mi da timeout ...

    è come se non chiudesse il while ...
    a me però sembra giusto

    dove sbaglio ?
    grazie in anticipo

  2. #2
    ma quanti prodotti hai?

    prova ad eseguire la query con un client mysql e vedere quanto ci mette

  3. #3
    Utente di HTML.it L'avatar di sandu
    Registrato dal
    Feb 2005
    Messaggi
    239
    non credo dipenda da quello perchè ho messo io qualche prodotto giusto per provare ...

    lo script secondo te è corretto ?

  4. #4
    Originariamente inviato da sandu
    lo script secondo te è corretto ?
    rileggendo no

    <?php
    $query = "SELECT DISTINCT categoria FROM prodotti";
    $result = mysql_query($query);
    while($row = mysql_fetch_array($result, MYSQL_ASSOC) )
    { echo "<a href=\"viewcat.php?nome={$row['nome']}\">- {$row['nome']} </a>
    ";}
    mysql_free_result($result);
    ?>

    ciao

  5. #5
    Utente di HTML.it L'avatar di sandu
    Registrato dal
    Feb 2005
    Messaggi
    239
    scusa ma come lo hai scritto tu non mi seleziona solo le linee con categoria=prodotti come vorrei io ...

    a me serve selezionare i risultati della query in modo da visualizzarne solo alcuni (quelli con categoria = prodotti)..

  6. #6
    SELECT DISTINCT categoria FROM prodotti....

    il row['nome'] dove lo dovrebbe prendere????

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it L'avatar di sandu
    Registrato dal
    Feb 2005
    Messaggi
    239
    si quello l'ho notato ora ma è un problema di copia e incolla ...

    ello script c'è :

    $query = "SELECT DISTINCT categoria, nome FROM prodotti";

    l'errore rimane comunque timeout

  8. #8
    sicuro che il timeout sia sulla query?

    Sarebbe bene che postassi nuovamente lo script entro tag [ code] o [ php] corretto dagli errori di copia incolla.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it L'avatar di sandu
    Registrato dal
    Feb 2005
    Messaggi
    239
    grazie innanzitutto..

    questo è quello esatto :

    <?php
    $query = "SELECT DISTINCT categoria, nome FROM prodotti";
    $result = mysql_query($query);
    $row = mysql_fetch_array($result, MYSQL_ASSOC);
    while($row['categoria'] == 'prodotti')
    { echo "<a href=\"viewcat.php?nome={$row['nome']}\">- {$row['nome']} </a>
    ";}
    mysql_free_result($result);
    ?>


    prima era così e funzionava ...:

    <?php
    $query = "SELECT DISTINCT categoria FROM prodotti";
    $result = mysql_query($query);
    while($row = mysql_fetch_array($result, MYSQL_ASSOC))
    { echo "<a href=\"viewcat.php?categoria={$row['categoria']}\">- {$row['categoria']} </a>
    ";}
    mysql_free_result($result);
    ?>

  10. #10
    codice:
    <?php
    $query = "SELECT DISTINCT categoria, nome FROM prodotti";
    $result = mysql_query($query) or die(mysql_error()) ;
    
    while($row = mysql_fetch_assoc($result))  {
    
    if ($row['categoria'] == 'prodotti') {
     
        echo "<a href=\"viewcat.php?nome={$row['nome']}\">- {$row['nome']} </a> 
    ";
      
        }
    }
    
    mysql_free_result($result);
    ?>
    sempre che la categoria che vuoi stampare si chiami "prodotti"....

    metti il codice tra tag in modo che sia piu' leggibile.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.