¿Cómo obtener múltiples valores seleccionados del cuadro de selección en PHP?

Resuelto Param-Ganak asked hace 54 años • 11 respuestas

Tengo un formulario html que tiene un cuadro de lista de selección desde el cual puede seleccionar múltiples valores porque su propiedad múltiple está configurada en múltiple. Considere que el método del formulario es 'OBTENER'. El código html del formulario es el siguiente:

<html>
    <head>
    <title>Untitled Document</title>
    </head>
    <body>
    <form id="form1" name="form1" method="get" action="display.php">
      <table width="300" border="1">
        <tr>
          <td><label>Multiple Selection </label>&nbsp;</td>
          <td><select name="select2" size="3" multiple="multiple" tabindex="1">
            <option value="11">eleven</option>
            <option value="12">twelve</option>
            <option value="13">thirette</option>
            <option value="14">fourteen</option>
            <option value="15">fifteen</option>
            <option value="16">sixteen</option>
            <option value="17">seventeen</option>
            <option value="18">eighteen</option>
            <option value="19">nineteen</option>
            <option value="20">twenty</option>
          </select>
          </td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td><input type="submit" name="Submit" value="Submit" tabindex="2" /></td>
        </tr>
      </table>
    </form>
    </body>
    </html>
Expandir fragmento

Quiero mostrar los valores seleccionados en el cuadro de lista de selección en la página display.php. Entonces, ¿cómo se accede a los valores seleccionados en la página display.php usando $_GET[]una matriz?

Param-Ganak avatar Jan 01 '70 08:01 Param-Ganak
Aceptado

Si desea que PHP lo trate $_GET['select2']como una serie de opciones, simplemente agregue corchetes al nombre del elemento seleccionado de esta manera:<select name="select2[]" multiple …

Luego puedes acceder a la matriz en tu script PHP.

<?php
header("Content-Type: text/plain");

foreach ($_GET['select2'] as $selectedOption)
    echo $selectedOption."\n";

$_GETpuede ser sustituido por $_POSTdependiendo del <form method="…"valor.

Alex Jasmin avatar Mar 09 '2010 07:03 Alex Jasmin

Cambiar:

<select name="select2" ...

A:

<select name="select2[]" ...
Coufu avatar Mar 09 '2010 07:03 Coufu

Puede utilizar este código para recuperar valores del cuadro combinado de selección múltiple

HTML:

<form action="c3.php" method="post">
  <select name="ary[]" multiple="multiple">
    <option value="Option 1" >Option 1</option>
    <option value="Option 2">Option 2</option>
    <option value="Option 3">Option 3</option>
    <option value="Option 4">Option 4</option>
    <option value="Option 5">Option 5</option>
  </select>
  <input type="submit">
</form>

PHP:

<?php
$values = $_POST['ary'];

foreach ($values as $a){
    echo $a;
}
?>
Abdul Kalam Azad avatar Nov 04 '2010 11:11 Abdul Kalam Azad

Utilice el siguiente programa para seleccionar los múltiples valores del cuadro de selección.

multi.php

<?php
print <<<_HTML_
<html>
        <body>
                <form method="post" action="value.php">
                        <select name="flower[ ]" multiple>
                                <option value="flower">FLOWER</option>
                                <option value="rose">ROSE</option>
                                <option value="lilly">LILLY</option>
                                <option value="jasmine">JASMINE</option>
                                <option value="lotus">LOTUS</option>
                                <option value="tulips">TULIPS</option>
                        </select>
                        <input type="submit" name="submit" value=Submit>
                </form>
        </body>
</html>
_HTML_

?>

valor.php

<?php
foreach ($_POST['flower'] as $names)
{
        print "You are selected $names<br/>";
}

?>
rekha_sri avatar Mar 09 '2010 08:03 rekha_sri