FAQ
Tengo un problema para recuperar variable pasadas por medio de post.
Lo que quiero hacer es pasar a otro script los datos de un formulario
donde tengo una lista recuperada de una consulta donde existe un check
que el usuario puede seleccionar a su gusto. El tema es que necesito
saber cuáles de esos check's están seleccionados.
Para generar el formulario, en realidad la lista, con un while voy
mostrando y poniendo los check's de esta forma

echo "<INPUT type='checkbox' checked name='id_per#$linea[0]' value =
'$linea_persona[0]'>";

El problema es recuperar los datos ya que no sé cuáles son los nombres
de las variales y con $_POST[] no consigo verlas.

Espero se entienda. Gracias de antemano y disculpen las molestias.

--
Sergio D. Gómez
Tostado (SF)
Argentina

Search Discussions

  • Gustavo Pardo at Dec 3, 2004 at 2:14 am

    El Jueves 02 de Diciembre de 2004 23:02, Sergio Daniel Gómez escribió:
    Tengo un problema para recuperar variable pasadas por medio de post.
    Lo que quiero hacer es pasar a otro script los datos de un formulario
    donde tengo una lista recuperada de una consulta donde existe un check
    que el usuario puede seleccionar a su gusto. El tema es que necesito
    saber cuáles de esos check's están seleccionados.
    Para generar el formulario, en realidad la lista, con un while voy
    mostrando y poniendo los check's de esta forma

    echo "<INPUT type='checkbox' checked name='id_per#$linea[0]' value =
    '$linea_persona[0]'>";

    El problema es recuperar los datos ya que no sé cuáles son los nombres
    de las variales y con $_POST[] no consigo verlas.

    Espero se entienda. Gracias de antemano y disculpen las molestias.

    --
    Sergio D. Gómez
    Tostado (SF)
    Argentina
    yo lo hago así:

    session_start();
    session_register('tu_array');
    ...
    $tu_array = array();
    while ( ... ) {
    echo "<INPUT type='checkbox' checked name='id_per#$linea[0]' value =
    '$linea_persona[0]'>";
    $tu_array[] = $linea[0];
    }
    $_SESSION['tu_array'] = $tu_array;
    ...

    // cuando recibo el post
    // recorro la variable con foreach()
    foreach ($_SESSION['tu_array'] as $valor) {
    echo $_POST['id_per'.$valor]
    }

    quizás se pueda hacer mejor de otro modo, no sé, pero yo lo hago así.
    saludos.
    gustavop
  • Esteban Fernández at Dec 3, 2004 at 3:38 pm
    La verdad no se entiende mucho, pero hize mi major esfuerzo, el checkbox que
    llega al siguiente script de un formulario (action), es solamente el que
    esta seleccionado, y logicamente, teniendo un valor (value), con esto lo
    puedes procesar facilmente.

    Otra cosa que vi que tienes un error, y es que los checkbox _tienen_ que
    tener _siempre_ el mismo nombre, si es que quieres que sean opciones
    distintas para selccionar solo 1 de ellas.

    En este caso, deberias tener algo asi.

    echo "<INPUT type='checkbox' checked name='id_per' value =
    '$linea_persona[0]'>";


    Puedes ver todas las variables que pasan por el metodo POST a tu pagina
    escribiendo esto al principio:

    <?php
    print_r($_POST);
    ?>

    Saludos,
    Esteban.





    -----Original Message-----
    From: Sergio Daniel Gómez
    Sent: Jueves, 02 de Diciembre de 2004 23:02
    To: Lista PHP-es
    Subject: [PHP-ES] Pasar a otro script nombre aleatorio de variables

    Tengo un problema para recuperar variable pasadas por medio de post.
    Lo que quiero hacer es pasar a otro script los datos de un formulario
    donde tengo una lista recuperada de una consulta donde existe un check
    que el usuario puede seleccionar a su gusto. El tema es que necesito
    saber cuáles de esos check's están seleccionados.
    Para generar el formulario, en realidad la lista, con un while voy
    mostrando y poniendo los check's de esta forma

    echo "<INPUT type='checkbox' checked name='id_per#$linea[0]' value =
    '$linea_persona[0]'>";

    El problema es recuperar los datos ya que no sé cuáles son los nombres
    de las variales y con $_POST[] no consigo verlas.

    Espero se entienda. Gracias de antemano y disculpen las molestias.

    --
    Sergio D. Gómez
    Tostado (SF)
    Argentina

    --
    PHP Spanish Localization Talk Mailing List (http://www.php.net/)
    To unsubscribe, visit: http://www.php.net/unsub.php
  • Rafael at Dec 3, 2004 at 7:28 pm

    Esteban fernández wrote:
    La verdad no se entiende mucho, pero hize mi major esfuerzo, el checkbox que
    llega al siguiente script de un formulario (action), es solamente el que
    esta seleccionado, y logicamente, teniendo un valor (value), con esto lo
    puedes procesar facilmente.

    Otra cosa que vi que tienes un error, y es que los checkbox _tienen_ que
    tener _siempre_ el mismo nombre, si es que quieres que sean opciones
    distintas para selccionar solo 1 de ellas.
    [···]

    Creo que estás confundiendo los checkbox con los radio-buttons, ya que
    en el caso de éstos últimos sí deben tener el mismo nombre, en el caso
    de los primeros no, ya que cada uno de ellos es una opción distinta
    Tengo un problema para recuperar variable pasadas por medio de post.
    Lo que quiero hacer es pasar a otro script los datos de un formulario
    donde tengo una lista recuperada de una consulta donde existe un check
    que el usuario puede seleccionar a su gusto. El tema es que necesito
    saber cuáles de esos check's están seleccionados.
    Como dijo Esteban, sólo los checkbox que estén seleccionados
    "existirán" en el script que recibe el POST del formulario, con sus
    respectivos valores, claro está. Es decir, no debes preocuparte por
    saber cuáles eligió, ya que habrá elegido _todos_ los que recibes.
    Para generar el formulario, en realidad la lista, con un while voy
    mostrando y poniendo los check's de esta forma

    echo "<INPUT type='checkbox' checked name='id_per#$linea[0]' value =
    '$linea_persona[0]'>";

    El problema es recuperar los datos ya que no sé cuáles son los nombres
    de las variales y con $_POST[] no consigo verlas.
    ¿Has intentado usar print_r(), como sugiere Esteban? Si el nombre del
    checkbox no importa, si sólo es necesario el contenido, puedes intentar
    con un array de campos (para PHP, no sé cómo reaccionaría JavaScript si
    tratas de acceder a ellos)

    Otra cosa, no entiendo bien el nombre que le das a los campos checkbox,
    pero probablemente no sean nombres válidos y desde ahí esté el problema.
    Al imprimirlos, intenta con un código semejante a éste:

    while( ... ) {
    ...
    echo '<input type="checkbox" name="fld_check[]" value="',
    $linea_persona[0], "\" checked />\n";
    ...
    }

    y en el script que recibe el formulario, usa print_r() para analizar la
    información que estás recibiendo (no estoy seguro de si se saltará o no
    algunos índices del array):

    echo '<pre> $_POST => ';
    print_r($_POST);
    echo "</pre>\n";
    --
    Rafael

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-general-es @
categoriesphp
postedDec 3, '04 at 2:02a
activeDec 3, '04 at 7:28p
posts4
users4
websitephp.net

People

Translate

site design / logo © 2022 Grokbase