Foros del Web » Programando para Internet » PHP »

Radio button activo

Estas en el tema de Radio button activo en el foro de PHP en Foros del Web. Tengo un formulario con 3 radio button el cual uno de ellos tiene el atributo checked, por lo tanto cuando se entra a la pagina ...
  #1 (permalink)  
Antiguo 25/05/2004, 18:03
 
Fecha de Ingreso: septiembre-2003
Ubicación: Hispania
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 0
Pregunta Radio button activo

Tengo un formulario con 3 radio button el cual uno de ellos tiene el atributo checked, por lo tanto cuando se entra a la pagina está
marcado por defecto.

La pregunta es la siguiente: si se marca otro de los radio button (no el que esta activo por defecto) y se hace una consulta cuando devuelve los resultados en la pagina aparece primero el formulario y despues los resultados de la consulta, y en el formulario aparece activo el radio button por defecto (el que tiene el atributo checked), esto es lo normal.

Ahora bien he visto que hay webs que cuando has hecho la consulta y te devuelve los resultados mantiene activo el radiobutton que se marcó (no el que tiene el checked).

¿Como se puede lograr este efecto?
¿Con variables de sesion ó como?

Estoy interesado en saber como se puede hacer.

Un saludo.
__________________
Dos cosas me admiran: la inteligencia de las bestias y la bestialidad de los hombres,
  #2 (permalink)  
Antiguo 25/05/2004, 18:20
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
en forma simple seria algo asi
supongamos q tu input radio se llama opcion
y opcion tiene 3 valores 1, 2 y 3
Código PHP:
<input type='radio' name='opcion' value='1' <?php if ($opcion == 1) echo "checked"?>>
<input type='radio' name='opcion' value='2' <?php if ($opcion == 2) echo "checked"?>>
<input type='radio' name='opcion' value='3' <?php if ($opcion == 3) echo "checked"?>>
bueno algo asi seria... se recibe el valor de opcion y se compara y si es igual debe tener checked!
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #3 (permalink)  
Antiguo 25/05/2004, 23:44
 
Fecha de Ingreso: septiembre-2003
Ubicación: Hispania
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 0
Pues no me funciona, de todas formas decir que el formulario esta hecho en PHP no haria falta abrir y cerrar PHP.

Bien gracias de todas formas.

Un saludo.
__________________
Dos cosas me admiran: la inteligencia de las bestias y la bestialidad de los hombres,
  #4 (permalink)  
Antiguo 26/05/2004, 09:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Stramonio .. la técnica es la que describe bhonox ..

Se trata de "añdir" dinámicamente la opción "checked" al input en cuestión (radio) según el valor que originalmente enviastes (los seleccionados) a tu servidor ..

Por ende .. tendras que capturar el valor de esas variables al recargar tu página (no sé si es el mismo script el que contiene el formulario y procesa->lista esos resultado o son separados) para poder aplicar el condicional que dice "si tiene tal valor" . .entonces es que -antes- estaba seleccionado ...

Si pones tu código que usas .. tal vez se vea mejor como aplicarlo a tu caso .. pero insisto que la técnica es esa.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 26/05/2004, 10:42
 
Fecha de Ingreso: septiembre-2003
Ubicación: Hispania
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 0
Me explico, lo que estoy tratando es de modificar GoogleApiSearch (script para poner Google en tu web) para darle la posibilidad de que busque en castellano o en España, como aparece en google.es

El formulario es el siguiente:
Código PHP:
function cabecera($fquery) {
    global 
$module_name;
    
OpenTable();
    echo 
"<center><table cellspacing=0 cellpadding=1 border=0>"
      
."<tr><td align=\"right\"><img src=\"modules/$module_name/logo.gif\" border=\"0\" alt=\"Google\"></td>"
      
."<td align=\"left\"><form action=\"modules.php?name=$module_name\" method=\"post\">"
      
."<font class=\"content\"><input type=\"text\" size=\"45\" name=\"query\" value=\"$fquery\">"
      
."<input name=\"submit\" type=\"image\" src=\"modules/GoogleApiSearch/bot.gif\" alt=\"Buscar\"></font></td>"
      
."<tr><td colspan=\"2\" align=\"center\">Búsqueda: <input type=\"radio\" name=\"meta\" value=\"\" checked>WWW "
      
."<input type=\"radio\" name=\"meta\" value=\"lang_es\">Páginas en Castellano "
      
."<input type=\"radio\" name=\"meta\" value=\"countryES\">Páginas de España "
      
."</form></td></tr></table></center>";
    
CloseTable();

La funcion de búsqueda y de paginacion estan en la misma pagina aunque lleva un include GoogleApiSearch.php que tambien tiene funcion de busqueda y formateo de los resultados de la consulta.

Aprovechando el momento, la paginacion se hace con un bucle "for" ¿Se puede meter un condicional "if" dentro del bucle?

Bien esto es todo, muchas gracias y un saludo
__________________
Dos cosas me admiran: la inteligencia de las bestias y la bestialidad de los hombres,
  #6 (permalink)  
Antiguo 26/05/2004, 11:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Esas variables que tienes de tus radio de nombre "meta" y que van definiendo valores: lang_es,countryES y demás .. es en lo que te tienes que basar para poner AHí mismo el condicional IF que te mencionó bhonox ..

Lo que no sé es de donde saldrá el valor de "meta" en esa función o script que usas .. Por el URL tendrá que venir (método GET) .. Esa variable .. o usas los arrays superglobales para accederla en tu función ($_GET) o bien la declaras como global en la función o se las pasas como parámetro a la función .. Pero, la necesitas para componer tu IF() que va a poner el "checked" donde meta tenga el valor que llege por su $_GET['meta'] ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 26/05/2004, 13:09
 
Fecha de Ingreso: septiembre-2003
Ubicación: Hispania
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 0
Como podras ver se usa el method "post", se hace una consulta al motor de Google y este devuelve los resultados que se listan y paginan en esta pagina.

Un saludo.
__________________
Dos cosas me admiran: la inteligencia de las bestias y la bestialidad de los hombres,
  #8 (permalink)  
Antiguo 26/05/2004, 14:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Bueno .. pues si es google (sus scripts/rutinas) las que paginan y las que "pierde" tus valores predefinido .. No sé como se lo vas a indicar si el control del paginado lo hace Google y no tus rutinas .. Tu tan sólo "ejecutas" tu consulta con tu formulario -> le pasas la cadena a buscar y predefines algunos valores por defecto para esa busqueda ..

(no he trabajado con "google" así ... así que me resulta complicado ver como trabaja .. sobre todo cuando pagina ..)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 26/05/2004, 16:11
 
Fecha de Ingreso: septiembre-2003
Ubicación: Hispania
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 0
No me has entendido o no me he explicado bien.

Esto es un script que utiliza una Api de Google (de hecho se puede bajar de la pagina de Google) lo que permite tener a Google en tu pagina, lo unico que haces es utilizar el motor de Google para las busquedas pero quien pagina es el propio script de hecho en la misma pagina donde esta el formulario esta la funcion paginar, que por cierto en mi anterior post preguntaba si se podia poner un "if" dentro del bucle "for", ya que se utiliza un "for" para paginar.
Este script esta muy extendido por internet y ya lo he visto con varias modificaciones que es lo que pretendo hacer, adaptarlo lo maximo posible a lo que es la pagina de Google real.

Un saludo
__________________
Dos cosas me admiran: la inteligencia de las bestias y la bestialidad de los hombres,
  #10 (permalink)  
Antiguo 28/05/2004, 07:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Ok, .. por mi parte no he visto ese script (ni lo he usado) .. pero si dices que el control de paginado lo hace uno de esos scripts bajo un bucle "for" pues .. si, puedes meter toda la lógica que gustes en el .. Sólo es cosa que lo pruebes y si desconoces la programación bajo PHP en general -> FAQ's del foro PHP.

Si quieres que en el foro alguien empiece a ver por "donde modificar" ese código .. tendrías que ponerlo integramente. Com veras no todo el mundo "lo usa" (o por lo menos conoce como funciona) pese que pueda saber "PHP" o no ...

Un saludo,
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 08:37.