Multiple bij select-element

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

George van Baasbank

George van Baasbank

18/05/2013 12:35:57
Quote Anchor link
Hallo allemaal,

Ik krijg de optie multiple bij het select-element niet werkend.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<div class="tagline_links">
   <label>Genre:</label><br />
   <select name="genre" multiple="" size="5">
      <?php
         while($row = mysql_fetch_array($cResultGenreInvoer)) {
      ?>

      <option value="<?php echo '[' . $row['keuze'] . ']' ; ?>"><?php echo $row['keuze'] ; ?></option>
      <?php } ?>
   </select><br /><br />
</div>


Bij het selecteren van meerdere opties wordt slechts de laatste in de rij in de variable (name="genre") vastgelegd.

Wat moet ik nu doen om meerdere selecties in de variabele te krijgen?


George
 
PHP hulp

PHP hulp

20/12/2024 19:45:24
 
N K

N K

18/05/2013 12:48:43
Quote Anchor link
name = "genre[]" wellicht?
 
Eddy E

Eddy E

18/05/2013 13:27:37
Quote Anchor link
Probeer eens multiple.
Dus zonder ="", want dat slaat nergens op.

En je HTML klopt ook niet helemaal.
Die <div> is niet echt nodig.
Je mist een <fieldset> waarbij je dan ook <legend> kan gebruiken (ipv <label>).
Ga je toch <label> gebruiken, zeg dan wel even waarvan het is met <label for="naam_van_input_element">.

Ik heb het even verbeterd en wat simpele CSS erover gegooid: http://codepen.io/Zunflappie/pen/uelIH
 
George van Baasbank

George van Baasbank

18/05/2013 16:36:42
Quote Anchor link
Eddy,

Ook dat werkt niet.

Kijk eens op http://jqz.vanbaasbank.nl/adm_cdinvoer.php en selecteer bijv eens twee of drie genbres en klok op Opslaan. Zie daar het resultaat.

Aan je andere suggesties ga ik aan werken.

George
 
Wouter J

Wouter J

18/05/2013 18:31:33
Quote Anchor link
1) multiple="multiple" is officeel de juiste syntax, maar multiple alleen wordt ook toegestaan. multiple="" is echter totaal fout.
2) Je moet de opties nu als een array behandelen: [] gebruiken dus (zoals NK al zei)
 
Dennis WhoCares

Dennis WhoCares

18/05/2013 18:35:23
Quote Anchor link
foreach($_POST['genre'] as $genre) {
echo $genre;
}
 
George van Baasbank

George van Baasbank

19/05/2013 11:55:43
Quote Anchor link
Ik heb de naam gewijzigd zoals voorgesteld: name = "genre[]".
Als ik nu het formulier doorstuur krijg ik bij de ontvanger alleen maar binnen: Array

Hoe toon ik krijg ik nu de array volledig in de variabele?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
    $c19 = $_POST['genre'];  // Hiert haal ik de inhoud van het select-element op.
    $c20 = $_POST['vorm'];
    
    
    include "include/connectie.inc.php";
    //include "queries/sql_into_nieuwecd.php";
    //$cResultCD = mysql_query($sql);
    mysql_close($verbinding);
    
    
    header("Location: adm_tracksinvoer.php?id=$c19");
    exit();
 
N K

N K

19/05/2013 12:03:15
Quote Anchor link
Het is een array nu (hint)
 
George van Baasbank

George van Baasbank

19/05/2013 12:06:18
Quote Anchor link
Maar ik heb de inhoud van die array nodig om een vervolgpagina aan te kunnenn sturen
 
N K

N K

19/05/2013 12:08:28
Quote Anchor link
Probeer er een string van te maken:

$c19 = implode("-",$_POST['genre']);
 
George van Baasbank

George van Baasbank

19/05/2013 12:13:14
Quote Anchor link
Dat is 'm Bedankt, ik kan weer verder. (Weer wat geleerd.....)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.