Foros del Web » Programando para Internet » PHP »

PHP OO select multiple

Estas en el tema de select multiple en el foro de PHP en Foros del Web. Tengo un form con varios imput algunos de ellos son select multiples con este form actualizo mi tabla en mysql, pero hay algo que no ...
  #1 (permalink)  
Antiguo 14/12/2011, 17:41
 
Fecha de Ingreso: noviembre-2011
Ubicación: Buenos Aires
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 2
select multiple

Tengo un form con varios imput algunos de ellos son select multiples
con este form actualizo mi tabla en mysql, pero hay algo que no se como resolver.

El mismo form si es un alta da un alta y si es una modificación modifica. Pero necesito que cuando entro en una modificación me aparescan las opciones seleccionadas de acuerdo a lo que está cargado en la tabla. Es decir el selected
el código es

print ("<tr>");
print ("<td>P5: ¿Dónde utilizó internet?</td>");
print ("<td><select size='4' id='p5' multiple name='p5[]'>");
print ("<option>--Elija las que correspondan--</option>");
print ("<option value='1'>1. En su hogar</option>");
print ("<option value='1'>2. En su trabajo</option>");
print ("<option value='1'>3. En establec. educativo</option>");
print ("<option value='1'>4. En la casa de otro</option>");
print ("<option value='1'>5. En un local comercial</option>");
print ("<option value='1'>6. Espacio comunitario</option>");
print ("<option value='1'>7. Otro tipo de local comercial</option>");
print ("<option value='1'>8. Dispositivo móvil</option>");
print ("</select></td>");
print ("</tr>");

¿Cómo se hace?
Si alguien puede ayudar muchas gracias
  #2 (permalink)  
Antiguo 14/12/2011, 17:45
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: select multiple

Tendrías que ir opción por opción y verificar con los datos de la BD si estaba seleccionada, de ser así lo indicas, algo así como:
if($fila["opcion"]==1)
print ("<option value='1' selected>1. En su hogar</option>");
else
print ("<option value='1'>1. En su hogar</option>");
  #3 (permalink)  
Antiguo 15/12/2011, 08:56
 
Fecha de Ingreso: noviembre-2011
Ubicación: Buenos Aires
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 2
De acuerdo Respuesta: select multiple

Gracias ocp001a. No podía darme cuenta como hacerlo. Se que con un javascrip creo que podría solucionarlo escribiendo menos, pero no me doy cuenta como hacerlo.
Solucionado esto me surge otro problema que no tengo ni idea como solucionarlo.

De acuerdo a una respuesta en el form tendría que seguir un flujo de preguntas distinto.

Si usa internet en su casa tendría que hacerle distintas preguntas que si la usa en el trabajo, por ejemplo. ¿Alguien sabe con que se hace eso?
  #4 (permalink)  
Antiguo 15/12/2011, 14:45
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: select multiple

Pues puedes hacer varias cosas, una es que según una opción, continúes con otro formulario, guardando en sesión los datos que vayan capturando.

Otra es tener todos los campos que quieres preguntar en un formulario pero agruparlos en divs o fieldsets que vayas mostrando u ocultando según se requiera.
  #5 (permalink)  
Antiguo 15/12/2011, 21:49
 
Fecha de Ingreso: noviembre-2011
Ubicación: Buenos Aires
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 2
Respuesta: select multiple

No tendras por allí algún link a un código que pueda servirme de ejemplo de lo que decis. Me cuesta mucho encontrar algo así. En general encuentro siempre lo mismo. El form con nombre, mail y algún oto dato que se guarda en una tabla y le contesto con un mail gracias, etc,etc
Yo estoy haciendo un programa de ingreso donde voy a ingresar encuestas. Algunas un poco largas, que tiene un flujo, que si es un hombre, le pregunto una cosa distinta de si es mujer o si trabaja, etc. Grabo en mysql y además puede darse el caso de que haya que modificar la información y el flujo podría cambiar, por ejemplo resulta que no trabajaba entonces tengo que modificar lo que tenía grabado.
Muchas gracias. No puedo dejar de decir que este foro me está ayudando muchísimo,

Etiquetas: mysql, select, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 03:41.