Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    16

    domanda su 2 select legate

    Ho due select popolate automaticamente dagli stessi dati estratti da db;
    ora, a me servirebbe che se nella prima seleziono un valore, nella seconda venga escluso dalle opzioni di scelta. è possibile inserire un controllo sulla query della seconda select, in modo che mi escluda il valore della prima?

    grazie.

  2. #2
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Dovresti spiegarti meglio, la seconda select la fai durante il while della prima?
    Posta il codice se puoi

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    dueselect.php
    codice:
    <?php
      $sql = "SELECT colonna_select FROM tabella_select";
      $result = mysql_query($sql, $db) or die (mysql_error());
    ?>
    <form name="mioform" action="dueselect.php" method="post">
      <select name="primaselect" onchange="this.form.submit();">
        <?php
           if ($result) {
             $valori_non_esclusi = array();
             while($row = mysql_fetch_array($result) {
               if ($_POST['primaselect'] != $row['colonna_select']) {
                 $valori_non_esclusi[] = $row['colonna_select'];
               }
               echo("<option value=\"".$row['colonna_select']."\">".$row['colonna_select']."</option>");
            }
        ?>
      </select>
      <select name="secondaselect">
      <?php
         for ($i = 0; $i < count($valori_non_esclusi); $i++) {
           echo("<option value=\"".$valori_non_esclusi[$i]."\">".$valori_non_esclusi[$i]."</option>");
         }
      ?>
      </select>
    Eventuali make-ups (ajax etc) lasciati a te.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    16
    echo "<form action='pippo.php' method='$formMethod' name='form'>";

    $giocatore1 = mysql_query("select giocatore from $mySQLgiocatori where ruolo = 'difensore' AND squadra = 'AAA'");
    echo "<tr><td align='center'><select class='piccolo' name='giocatore1' id='giocatore1' onChange='checkGiocatore1(this,this.form)'>";

    while (list($giocatore)= mysql_fetch_array($giocatore1))
    {
    echo "<option value='$giocatore'>$giocatore</option>";
    }
    echo "</select></td></tr>";
    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    $giocatore2 = mysql_query("select giocatore from $mySQLgiocatori where ruolo = 'difensore' AND squadra = 'AAA'");

    echo "<tr><td align='center'><select class='piccolo' disabled name='giocatore2'>";
    while (list($giocatore)= mysql_fetch_array($giocatore2))
    {
    echo "<option value='$giocatore'>$giocatore</option>";
    }
    echo "</select></td></tr>";


    Questa è la parte di codice relativa alle 2 select, entrambe estraggono gli stessi dati dal db, quello che volevo fare io era di escludere dalla seconda select il valore che ho appena scelto nella prima! non sapevo se inserirlo nella query che popola la seconda select o altro.
    Ah, aggiungo che non sono particolarmente ferrato.. mi muovo 1 po' come autodidatta, perciò magari è una coglionata! Grazie.

  5. #5
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Prova cosi :

    echo "<form action='pippo.php' method='$formMethod' name='form'>";

    $giocatore1 = mysql_query("select giocatore from $mySQLgiocatori where ruolo = 'difensore' AND squadra = 'AAA'");
    echo "<tr><td align='center'><select class='piccolo' name='giocatore1' id='giocatore1' onChange='checkGiocatore1(this,this.form)'>";

    while (list($giocatore)= mysql_fetch_array($giocatore1))
    {
    echo "<option value='$giocatore'>$giocatore</option>";
    }
    echo "</select></td></tr>";
    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    $giocatore2 = mysql_query("select giocatore from $mySQLgiocatori where ruolo = 'difensore' AND squadra = 'AAA' AND giocatore !='$giocatore' ");

    echo "<tr><td align='center'><select class='piccolo' disabled name='giocatore2'>";
    while (list($giocatore)= mysql_fetch_array($giocatore2))
    {
    echo "<option value='$giocatore'>$giocatore1</option>";
    }
    echo "</select></td></tr>";


    La prima query dovrebbe restituirti una sola riga, altrimenti vengono create tante seconde <select> quanti sono le righe della prima query, e nn avrebbe senso lo script.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    16
    mm, no, purtroppo non gira correttamente, nella seconda select mi carica un valore "Resource id#4" ripetuto.

  7. #7
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Prova a cambiare il nome del secondo array giocatore, cosi :

    echo "<form action='pippo.php' method='$formMethod' name='form'>";

    $giocatore1 = mysql_query("select giocatore from $mySQLgiocatori where ruolo = 'difensore' AND squadra = 'AAA'");
    echo "<tr><td align='center'><select class='piccolo' name='giocatore1' id='giocatore1' onChange='checkGiocatore1(this,this.form)'>";

    while (list($giocatore)= mysql_fetch_array($giocatore1))
    {
    echo "<option value='$giocatore'>$giocatore</option>";
    }
    echo "</select></td></tr>";
    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    $giocatore2 = mysql_query("select giocatore from $mySQLgiocatori where ruolo = 'difensore' AND squadra = 'AAA' AND giocatore !='$giocatore' ");

    echo "<tr><td align='center'><select class='piccolo' disabled name='giocatore2'>";
    while (list($giocatorex)= mysql_fetch_array($giocatore2))
    {
    echo "<option value='$giocatorex'>$giocatore1</option>";
    }
    echo "</select></td></tr>";

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    16
    no, purtroppo continua a estrarmi lo stesso "messaggio" nella seconda select; qualche altra intuizione? intanto comunque ti ringrazio per la disponibilità!!

  9. #9
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Puoi copiare tutto l output della pagina x capire l errore che da,
    oppure se lo hai online puoi mettere il link?

    Il problema cmq è nella logica dello script perche tu facendo la prima query passa alla seconda sempre l ultimo campo estratto, dovresti inglobare la seconda query nel primo while

    In pratica nella prima query estrai tutti i giocatori difensori della squada AAA e nella seconda query nn estrai nulla.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    16
    </body>
    <form action='pippo.php' method='post' name='form'><tr><td align='center'><select class='piccolo' name='giocatore1' id='giocatore1' onChange='checkGiocatore1(this,this.form)'>
    <option value='juliano'>juliano</option><option value='di loreto'>di loreto</option><option value='kuffour'>kuffour</option><option value='bellini'>bellini</option><option value='loria'>loria</option><option value='lucarelli a.'>lucarelli a.</option><option value='bertotto'>bertotto</option><option value='panucci'>panucci</option></select></td></tr><tr><td align='center'><select class='piccolo' disabled name='giocatore2'><option value='juliano'>Resource id #4</option><option value='di loreto'>Resource id #4</option><option value='kuffour'>Resource id #4</option><option value='bellini'>Resource id #4</option><option value='loria'>Resource id #4</option><option value='lucarelli a.'>Resource id #4</option><option value='bertotto'>Resource id #4</option><option value='panucci'>Resource id #4</option></select></td></tr><tr><td align='center'><input name='submit' type='submit' class='piccolo' value='Invia la formazione'></td></tr></table></form>
    </body>

    intendevi questo come output della pagina?? quando la carico mi carica gli 8 giusti per la prima select, ma nella seconda carica quel valore!
    devo provare a fare 1 paio di prove sul tuo suggerimento di inglobare..

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.