Foros del Web » Programando para Internet » PHP »

Traer respûesta de BD...

Estas en el tema de Traer respûesta de BD... en el foro de PHP en Foros del Web. Saludos, Tengo un formulario que incluye una pregunta con un par de "radio botones" para "si" y "no"... En el formulario normal el código es ...
  #1 (permalink)  
Antiguo 10/02/2010, 04:10
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 20 años, 8 meses
Puntos: 5
Traer respûesta de BD...

Saludos,

Tengo un formulario que incluye una pregunta con un par de "radio botones" para "si" y "no"... En el formulario normal el código es el siguiente:

Código PHP:
?php
$opciones 
= array(''si' => 'Si quiero',
                '
no' => 'No puedo',);
    foreach ($opciones as $llave => $opcion) {
      echo "<input type='
radio' name='opciones_db' value='$llave/> $opcion n&nbsp;";
}
?> 
Funciona bien y se guarda bien en la base de datos. Sin embargo he creado un formulario para que esta opción pueda ser modificada, entre otros datos. Lo que no he podido lograr es que en ese formulario de modificaciones se marque la opción automáticamente que se ha seleccionado previamente y el usuario no se preocupe de re-seleccionar nuevamente una respuesta.

Gracias por vuestra respuesta.
__________________
Andrew :P
  #2 (permalink)  
Antiguo 10/02/2010, 05:52
Avatar de facurouss  
Fecha de Ingreso: enero-2010
Mensajes: 101
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Traer respûesta de BD...

Em en el value le pones la variable en donde esta guardado el dato que puso
Un ejemplo cortito

$cons = "select * from usuario";
$res = mysql_query($cons,$conectar);
$fila = mysql_fetch_array($res);
$nombre = $fila['nombre'];
despues en el formulario lo pones asi
<input type='text' name='opciones_db' value='<?php echo $nombre; ?> '>
  #3 (permalink)  
Antiguo 10/02/2010, 08:15
Avatar de vicram10  
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 326
Antigüedad: 15 años, 2 meses
Puntos: 27
Respuesta: Traer respûesta de BD...

Para tu radio button

Código PHP:
$cons "select * from opciones";
$res mysql_query($cons,$conectar);
while(
$fila mysql_fetch_assoc($res))
{
     
$selected $fila['opcion'];
}

$opciones = array('si' => 'Si quiero',
                
'no' => 'No puedo',);
    foreach (
$opciones as $llave => $opcion) {
      echo 
'<input type="radio" name="opciones_db" value="'$llave .'" '. ($llave == $selected 'checked="checked"' '') .'/>'$opcion .'&nbsp;';

Prueba de esa manera
  #4 (permalink)  
Antiguo 10/02/2010, 09:44
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 20 años, 8 meses
Puntos: 5
Respuesta: Traer respûesta de BD...

Hola vicam10...

Gracias por tu respuesta... Hay una cosa que no logro entender en tu sugerencia:

Código PHP:
 'checked="checked"' '' 
De dónde viene la variable 'checked' ?

P.D.: facurouss, gracias por tu respuesta. Sin embargo estoy trabajando los radio buttons a través de array para generar el menu y posteriormente validarlo si usar JS.
__________________
Andrew :P
  #5 (permalink)  
Antiguo 10/02/2010, 09:46
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 20 años, 8 meses
Puntos: 5
Respuesta: Traer respûesta de BD...

Ok!... Ya lo he entendio... Capta el estado de la variable!... Funciona perfectamente.

Gracias por tu ayuda.

POST SOLUCIONADO!
__________________
Andrew :P

Última edición por andrewp; 10/02/2010 a las 09:52
  #6 (permalink)  
Antiguo 10/02/2010, 11:44
Avatar de vicram10  
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 326
Antigüedad: 15 años, 2 meses
Puntos: 27
Respuesta: Traer respûesta de BD...

Cita:
Iniciado por andrewp Ver Mensaje
Ok!... Ya lo he entendio... Capta el estado de la variable!...
Efectivamente, con eso vos le decis que su estado sea tal o cual, de acorde a si el valor contenido ahi, es igual al valor que hay en tu BD, es para eso, y era lo que tu necesitabas

Etiquetas: bd
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




La zona horaria es GMT -6. Ahora son las 05:58.