Visualizzazione dei risultati da 1 a 2 su 2

Discussione: cicli while annidati

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    114

    cicli while annidati

    ciao a tutti,
    ho questo problema :
    devo annidare 2 cicli while...col primo estraggo dal database i campi di una news (argomento, titolo, descrizione...)...col secondo estraggo da un'altra tabella gli argomenti da inserire in un select per la modifica del campo "argomento" della news.
    faccio così :

    Codice PHP:
    include ('connessione.php');

    \\ 
    con questo richiamo tutti gli argomenti che una news può avere
    $query 
    "SELECT * FROM argomenti_news ORDER BY argomento_notizia ASC";
    $result mysql_query($query$db);

    \\ 
    con questo richiamo una news già esistente da modificare
    $query2 
    "SELECT * FROM news WHERE id='$id'";
    $result2 mysql_query($query2$db);

    while (
    $row mysql_fetch_array($result2))
    {
    $argomento_assegnato=$row[argomento];
    while (
    $row mysql_fetch_array($result))
    {
    $argomento=$row[argomento_notizia];
    $select="<option value=\"$argomento\">$argomento</option>";
    }
    $risultati="<form method=\"POST\" action=\"salva_modifica.php\">
    <table border=0 width=520 cellspacing=15 cellpadding=0>
        <tr>
            <td><div class=voci_modulo>Argomento *</div>
                        <div>
                        <select name=categoria size=1>
                        <option selected>
    $argomento_assegnato</option>
    $select
    </select>....."
    ;
    echo 
    $risultati;

    ..il problema è che in questo modo nel select (in cui dovrebbe riportarmi come selezionato il valore già assegnato alla news e come scelte possibili tutti i valori che estraggo con $query) mi riporta si il valore già assegnato al campo Argomento della news ma, nella lista, mi riporta una sola <option> anzichè tutte quelle che dovrei aver estratto con la prima query.

    come potrei risolvere??

    grazie mille

  2. #2
    while ($row = mysql_fetch_array($result2))
    {
    $argomento_assegnato=$row[argomento];
    while ($row = mysql_fetch_array($result))

    prova nel secondo while a chiamarlo $row2

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.