• User

    Popolare dinamicamente una casella di riepilogo

    Salve a tutti, sono un nuovo iscritto fresco fresco....
    In primis volevo fare i complimenti per il forum che da quello che ho potuto vedere è molto ben strutturato e ricco di consigli.
    Ma adesso arriviamo al dunque....ho cominciato da poco a creare siti in php e mysql e di ciamo che per le operazioni di base me la cavo abbastanza bene, ma il problema (sarà stupido) che non riesco a risolvere è come popolare dinamicamente un menu a discesa (casela di riepilogo) con i dati provenienti dal database.
    Grazie ancora per l'interessamento e a presto
    Loris3000


  • User Attivo

    Se con menù a discesa, intendi il classico menù a tendina presente su internet, un semplice codice per popolarlo è questo:

    Questo è il codice che fa richiesta delle informazioni.
    [php]
    <?php
    $db_link = mysql_connect("localhost", "root", "pass")
    or die("ERRORE: Impossibile Accedere al DataBase");

    if(($query_ret = mysql_select_db($db_name)) == FALSE)
    {
        echo "ERRORE: Impossibile Accedere al DataBase";
        exit();
    }
    
    $lista = "";
    
    $query = "SELECT id, campo FROM tabella";
    
    $query_ret = mysql_query($query);
    
    if(!$query_ret)
    {
        $lista = "<option value='null'>VUOTO</option>";
    }
    
    if(mysql_num_rows($query_ret) == 0)
    {
        $lista = "<option value='null'>VUOTO</option>";
    }
    else
    {
        while($sql_return = mysql_fetch_assoc($query_ret))
        {
            $lista .= "<option value='" . $sql_return["id"] . "'>" . $sql_return["campo"] . "</option>";
        }
    }
    
    mysql_close($db_link);
    

    ?>
    [/php]Questo è il menù a tendina creato con l'aggiunta dinamica dei dati ricevuti dal precedente script:

    [php]
    <select size="1" name="mnu_tendina">
    <option selected value="sel_value">Selezionare Valore</option>
    <?php echo $lista; ?>
    </select>
    [/php]Ovviamente si può modificare tutto a seconda delle esigenze.
    Ricorda però che i due script si devono trovare nella stessa pagina PHP, oppure il primo deve essere incluso nel secondo attraverso "include" o "require".

    Ciao!


  • User

    Grazie 1000! Sei stato molto gentile e chiaro. Chissà perchè pensavo fosse da fare una cosa difficilissima.
    Grazie ancora
    Loris3000


  • User Attivo

    Prego 🙂

    Ciao!