[Php-avanzado] Consulta por Select

Sergio Marquez marquez.sergio.d en gmail.com
Lun Jul 23 15:17:08 ART 2012


Claro, muy cierto! Lo que pasa es qué omití leer "sin usar Javascript".

En fin, éste método está muy bueno si se necesita traer datos dinamicamente
con AJAX.

El 23 de julio de 2012 12:56, Leonardo Tadei - Pegasus Tech Supply <
leonardot en pegasusnet.com.ar> escribió:

> Hola Sergio,
>
>         gracias por el aporte.
>         A David no le sirve usar solo atributos data, ya que su problema es
> obtener ese otro dato en PHP, y los data no serán enviados por el
> formulario.
>         Podría usar los data para que, mediante JavaScript, obtener el
> valor y
> ponerlos como input hidden del formulario que envía, pero para esto
> podría precargar directamente los hidden al armar programáticamente el
> formulario y listo.
>         Se puede usar, pero parece más complicado que otras soluciones
> posibles, y el principio KISS de programación alienta a usar las
> soluciones más simples que se puedan.
>
>         Interesante discusión!
>
>
>
> El lun, 23-07-2012 a las 10:56 -0300, Sergio Marquez escribió:
> > Hola David, te recomiendo usar los atributos data, que son una novedad
> > en html5. Son muy faciles de usar y son standard.
> > Aca te paso un articulo que aparecio entre los primeros en
> > google
> http://scriptinside.blogspot.com.ar/2010/11/html-5-jquery-y-los-atributos-data.html
> .
> >
> >
> > Te dejo un ejemplo.
> >
> >
> >         <select name="miSelect">
> >             <option value="Muy Bien" data-nota="10"
> >         data-otrovalor="Cualquier Cosa"> Muy bien </option>
> >             ...
> >         </select>
> >
> >
> > Si utilizás características de HTML5 no te olvides de cambiar tu
> > doctype a:
> >          <!DOCTYPE>
> >
> >
> > Salu2.
> >
> >
> > El 20 de julio de 2012 16:57, David Barraud <davidbarraud en gmail.com>
> > escribió:
> >         Si, me quedo con la solución de pasar un sólo dato y recuperar
> >         en el otro formulario mediante la consulta a la BD. Es esto lo
> >         que había pensado en un principio pero era curiosidad por
> >         saber si se podía hacer. Es interesante lo del separador y el
> >         parseo.
> >         Muchas gracias!
> >
> >         El 19 de julio de 2012 21:33, Leonardo Tadei - Pegasus Tech
> >         Supply <leonardot en pegasusnet.com.ar> escribió:
> >
> >                 David,
> >
> >                         la respuesta vendría a ser no, sí y no te
> >                 conviene.
> >
> >                         No: un value de un elemento de form solo tiene
> >                 un solo valor (y no hay
> >                 javascript que te salve para que un valor se convierta
> >                 en dos valores)
> >
> >                         Sí: porque podés armar una regla para tener un
> >                 separador y del otro
> >                 lado parsear el único valor que podés enviar para
> >                 obtener los dos
> >                 valores. Por ejemplo:
> >
> >                 <select name="miSelect">
> >                 <option value="10|Muy bien">Muy bien </option>
> >                 <option value="5|Regula">Regular </option>
> >                 <option value="0|Muy mal">Muy mal </option>
> >                 </select>
> >
> >                         Se envía un solo valor, pero luego de
> >                 analizarlo, tenés los dos
> >                 valores.
> >
> >                         No te conviene: si armaste el select leyendo
> >                 de una tabla de base de
> >                 datos, basta con pasarte el ID para que con un select
> >                 recuperes el
> >                 valor. No tengas miedo a hacer consultas!!
> >                         Si esto no se lee de una tabla, es posible que
> >                 hayas normalizado mal y
> >                 no la hayas encontrado (por ejemplo creyendo que esto
> >                 no era un dato que
> >                 el sistema tenia que "mostrar" o "gestionar".
> >
> >                         Si por algún motivo extraño estos datos no
> >                 están en una tabla, entonces
> >                 podés definir un array en un archivo de configuración
> >                 con los valores,
> >                 generar el <SELECT> con un foreach, y del otro lado
> >                 con el ID del vector
> >                 obtener el texto que ve el usuario.
> >
> >                         Todo esto es mejor que otras soluciones,
> >                 porque la solución "sí" parece
> >                 buena, pero te obliga a tener que revisar todos los
> >                 datos para que no
> >                 esté el separador, porque si no perdés los valores; o
> >                 si son fijos y
> >                 tenés que hacer un cambio tenés que cambiar también la
> >                 forma de
> >                 recogerlos en el script de destino; o si los datos van
> >                 directamente a
> >                 guardarse alguien que se de cuenta puede enviarte "0|
> >                 Muy bien" con lo
> >                 que te genera una inconsistencia de datos... y una
> >                 inconsistencia de
> >                 datos es culpa del programador.
> >
> >
> >                         Tal vez si nos das el ejemplo concreto que te
> >                 plantea este problema,
> >                 podemos ver soluciones más puntuales al problema.
> >
> >                         Saludos!
> >
> >
> >                 El jue, 19-07-2012 a las 11:25 -0300, David Barraud
> >                 escribió:
> >                 > Hola Leo, tengo una consulta con respecto al select
> >                 >
> >                 >
> >                 > Supongamos que tengo el siguiente select
> >                 > <select name="miSelect">
> >                 > <option value="10">Muy bien </option>
> >                 > <option value="5">Regular </option>
> >                 > <option value="0">Muy mal </option>
> >                 > </select>
> >                 >
> >                 >
> >                 > ¿Hay alguna manera de enviar el dato del texto
> >                 además del value? si
> >                 > quiero enviar por ejemplo  el número "10" y el texto
> >                 "Muy bien"
> >                 > seleccionando el primer valor.
> >                 > Se pueden enviar los 2 sin recurrir a Javasript?
> >                 > Muchas gracias
> >
> >                 > _______________________________________________
> >                 > Php-avanzado mailing list
> >                 > Php-avanzado en pato2.fi.mdp.edu.ar
> >                 >
> >
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >                 --
> >                 Leonardo Tadei
> >                 leonardot en pegasusnet.com.ar
> >                 Blog: http://blog.pegasusnet.com.ar
> >                 Firma pública:
> >                 http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> >
> >                 _______________________________________________
> >                 Php-avanzado mailing list
> >                 Php-avanzado en pato2.fi.mdp.edu.ar
> >
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >
> >         _______________________________________________
> >         Php-avanzado mailing list
> >         Php-avanzado en pato2.fi.mdp.edu.ar
> >         http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> >
> >
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
> --
> Leonardo Tadei
> leonardot en pegasusnet.com.ar
> Blog: http://blog.pegasusnet.com.ar
> Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
>
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20120723/9603408d/attachment-0001.html>


Más información sobre la lista de distribución Php-avanzado