• User

    visualizzazione select MySql

    Ciao ragazzi! ^___^
    ho proprio bisogno di aiuto!
    Sto realizzando una pagina web in cui, per alcune motivazioni, dovrei fare un select (html) i cui elementi vengono richiamati dal database... il problema è che non capisco per quale motivo non mi funziona
    Posto il codice, così magari c'è qualche santo in grado di aiutarmi...

    <select name="Indirizzi">
    <? include("db.php");
    $sql = 'SELECT Nome FROM Indirizzi WHERE Nascosto = 1 AND (Id%1000) LIMIT 0, 30 ';
    $Result = mysql_query($MySql);
    while ($rs = mysql_fetch_array($Result))
    { ?>
    <option value="<?= $rs["Nome"] ?>"><?= $rs["Nome"] ?></option>
    <? }
    $rs->close;
    ?>
    </select>

    Sulla parte $Sql=SELECT ecc.. sono abbastanza sicura perchè provo a fare la ricerca nel database e mi da i risultati giusti. Il problema è il resto. Infatti, nella pagina risultante, il select mi risulta vuoto.... perchè?

    Spero possiate aiutarmi! ^___^
    Grazie in anticipo!
    Charlotte


  • User Attivo

    Devi mettere l'echo della variabile, devi modificare questa riga:

    
    <option value="<?= $rs&#91;"Nome"&#93; ?>"><?= $rs&#91;"Nome"&#93; ?></option> 
    
    

    così:

    
    <option value="<?php echo $rs&#91;"Nome"&#93; ?>"><?php echo $rs&#91;"Nome"&#93; ?></option> 
    
    

  • User

    :ciauz: Ciao margheritebianche!

    Ti ringrazio per la risposta così immediata e per il suggierimento. In effetti hai ragione... bisogna utilizzare echo.. solo che continua a non funzionarmi...

    io inserisco il codice che mi hai dato:

    <option value="<?php echo $rs["Nome"] ?>"><?php echo $rs["Nome"] ?></option>

    ma mi da ancora la tendina di select vuota... ho pensato allora che echo ha bisogno delle virgolette.

    <option value="<?php echo "$rs["Nome"]" ?>"><?php echo "$rs["Nome"]" ?></option>

    ma così le virgolette si incasinano..... come risolvo?
    :arrabbiato:
    se puoi aiutarmi ancora te ne sono grata!

    :ciauz:


  • Moderatore

    $sql = 'SELECT Nome FROM Indirizzi WHERE Nascosto = 1 AND (Id%1000) LIMIT 0, 30 ';
    $Result = mysql_query($MySql);

    Io vedo che hai assegnato alla variabile $sql per poi richiamare $MySql.

    Credo sia qui il problema 🙂


  • User

    :mmm: perdonami ma non ho ben compreso il tuo suggierimento... Ho sbagliato in quella riga, dici?

    cosa dovrei fare quindi? 🙂

    scusate la rottura di scatole, ma sono giorni che ci lavoro e non riesco a trovare una soluzione


  • User Attivo
    
    <select name="Indirizzi">
    <? include&#40;"db.php"&#41;;
    $sql = 'SELECT `Nome` FROM `Indirizzi` WHERE `Nascosto` = 1 AND &#40;Id%1000&#41; LIMIT 0, 30 ';
    $Result = mysql_query&#40;$sql&#41;;
    while &#40;$rs = mysql_fetch_array&#40;$Result&#41;&#41;
    &#123; ?>
    <option value="<?php echo $rs&#91;"Nome"&#93; ?>"><?php echo $rs&#91;"Nome"&#93; ?></option>
    <? &#125;
    $rs->close;
    ?>
    </select>
    
    

  • User Attivo

    O meglio ancora, per avere codice + pulito:

    
    <?php
    
    include&#40;"db.php"&#41;;
    
    echo '<select name="Indirizzi">';
    $sql = 'SELECT `Nome` FROM `Indirizzi` WHERE `Nascosto` = 1 AND &#40;Id%1000&#41; LIMIT 0, 30 ';
    $Result = mysql_query&#40;$sql&#41;;
    while &#40;$rs = mysql_fetch_array&#40;$Result&#41;&#41;
      &#123;
      echo "<option value='" . $rs&#91;"Nome"&#93; . "'>" . $rs&#91;"Nome"&#93; . "</option>";
      &#125;
    echo "</select>";
    
    ?>
    
    

    Chiaramente all'inizio devi aprire la connessione e dopo chiuderla.


  • User

    FUNZIONA!!!!!!!!!!!!!
    😄 grazie mille! 😄
    a presto

    :yuppi: :yuppi: :yuppi:
    :brindisi: