2009-09-21 7 views
6
<select id="industryExpect" multiple="multiple"> 
<option value="1">item1</option> 
<option value="2">item2</option> 
<option value="3">item3</option> 
... 
</select> 

que estoy viendo algo como: industryExpect = 13 = 17 industryExpect & & industryExpect = 19¿Cómo lidiar con valores múltiples de <select> en PHP?

decir que hay múltiples valores con la misma clave,

Cómo recuperarlas de $ _POST en PHP?

Respuesta

8

Darle un nombre con [] en el extremo, por ejemplo:

<select id="industryExpect" name="industryExpect[]" multiple="multiple"> 
    <option value="1">item1</option> 
    <option value="2">item2</option> 
    <option value="3">item3</option> 
</select> 

Luego, en la matriz de $_POST, podrás obtener una matriz de todas las opciones seleccionadas:

// assuming that item1 and item3 were selected: 
print_r($_POST['industryExpect']); 
/* 
array 
(
    0 => 1 
    1 => 3 
) 
*/ 
+0

¿Está el [] NECESARIO lo incluí y la diferencia es simplemente:? IndustryExpect% 5B% 5D = 6 & industryExpect% 5B% 5D = 11 y industryExpect% 5B% 5D.And% 5B% 5D es [] después de la codificación. – omg

+0

Oh, funciona, muy extraño – omg

+0

El mío no funcionó? –

0

partir de archivos HTML. ex. a.html

<form action="process.php" method="post"> 
    <select name="names[]" multiple="multiple"> 
    <option value="john">john</option> 
    <option value="jack">jack</option> 
    </select> 
    <input type=hidden name=submitted> 
    <input type=submit name=submit> 
</form> 

process.php:

<?php 
print_r($_POST['names']); 
?> 
+0

Probado, no funciona. – omg

+1

¿Has intentado hacerlo funcionar? Probar ahora. –

+0

@meder Eres un glotón para el castigo. – random

Cuestiones relacionadas