login  Naam:   Wachtwoord: 
Registreer je!
 Forum
Zoeken  Regels  Help
Categorieën > PHP & SQL

multiple select controle (Opgelost)

Thijs – 22/06/2007 11:36
Ik ben bezig met een agenda te maken met de mogelijkheid om meerdere medewerkers te kunnen selecteren waarvoor de activiteit geld.

Het selecteren van meerdere medewerkers gaat goed echter als de pagina dan refresht i.v.m. het kiezen van een datum/template zijn de eerder gekozen medewerkers niet allemaal meer geselecteerd.

Ik gebruik de volgende code:
  1. echo "<tr class='row2'><td width='10'></td><td>Medewerker(s) :</td><td colspan='3'>";
  2. echo "<select name='medewerker[]' multiple='multiple'>";
  3.  
  4. $sql = "SELECT * FROM gebruiker ORDER BY medewerker ASC";
  5. $resultaat = mysql_query($sql) or die(mysql_error());
  6.  
  7. $rows = mysql_num_rows($resultaat);
  8.  
  9. if (isset($_POST['medewerker']))
  10. {
  11. for($a = 0; $record = mysql_fetch_assoc($resultaat); $a++)
  12. {
  13. if (($_POST['medewerker'][$a]) == ($record['medewerker']))
  14. {
  15. echo "<option value='" . $_POST['medewerker'][$a] . "' selected>" . $_POST['medewerker'][$a] . "</a>";
  16. }
  17. else
  18. {
  19. echo "<option value='" . $record['medewerker'] . "'>" . $record['medewerker'] . "</option>";
  20. }
  21. }
  22. }
  23.  
  24. echo "</select>";



Heeft iemand een idee hoe ik ervoor kan zorgen dat bij een pagina refresh de geselecteerde medewerkers geselecteerd blijven en de overige als normaal in de selectbox komen?

Alvast bedankt voor het meedenken en de hulp!

PS. deze methode gaat overigens wel bij andere formulier attributen alleen niet bij deze multiple select.

2 antwoorden

Gesponsorde links
Daisycon - Verdien geld met uw website

smoos – 22/06/2007 12:04 (Laatst gewijzigd op 22/06/2007 12:04)
Dit zou moeten werken, uit de losse hand geschreven dus niet getest
  1. <?php
  2. <tr class="row2">
  3. <td width="10"></td>
  4. <td>Medewerker(s) :</td>
  5. <td colspan="3">
  6. <select name="medewerker[]" multiple="multiple">';
  7.  
  8. $sql = "SELECT id, naam FROM gebruiker ORDER BY medewerker ASC";
  9. $resultaat = mysql_query($sql) or die(mysql_error());
  10. while($assoc = mysql_fetch_assoc($resultaat)){
  11. echo '<option value="'.$assoc['id'].'" '.(isset($_POST['medewerker']) && in_array($assoc['id'], $_POST['medewerker']) ? 'selected="selected"' : '').'>'.$assoc['naam'].'</option>';
  12. }
  13. echo '</select>';
  14. ?>


Thijs – 22/06/2007 12:23
Enorm bedankt, daarmee kom ik uit de voeten!

Gesponsorde links

Dit onderwerp is gesloten.
Actieve forumberichten:

© 2002-2012 Sitemasters.be - Regels - Gehost door: Vircon - Laadtijd: 0.082s