Foros del Web » Programando para Internet » PHP »

recibir variables en la propia pagina

Estas en el tema de recibir variables en la propia pagina en el foro de PHP en Foros del Web. Esta vez creo que mi problema no es demasiado dificultoso y seguro que ya se lo ha planteado mucha gente, pero no termino de dar ...
  #1 (permalink)  
Antiguo 06/02/2004, 11:02
Avatar de JUANCHE  
Fecha de Ingreso: marzo-2003
Ubicación: Sevilla
Mensajes: 25
Antigüedad: 21 años, 1 mes
Puntos: 0
recibir variables en la propia pagina

Esta vez creo que mi problema no es demasiado dificultoso y seguro que ya se lo ha planteado mucha gente, pero no termino de dar con la tecla ...a ver ...

Tengo dos botones en mi pagina (SI y NO) , si el usuario pulsa SI , entonces debo ejecutar cierto codigo php que está EN ESA MISMA PÁGINA, si por el contrario pulsa NO , debo cargar una nueva página.

Sé que con isset puedo detectar si se ha declarado o no una nueva variable, pero ... ¿ cómo podría crear estos botones para poder recibir la variable sin cambiar de pagina? .... alguna idea porfa ? ....gracias de antemano.
__________________
------------------------------------------------------------

PREÑADO DE IDEAS BUSCANDO COMO PARIRLAS
  #2 (permalink)  
Antiguo 06/02/2004, 11:43
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
Bueno podrias tener dos php, e integrarlos en la misma pagina mediante frames... un frame realiza una accion en el otro..
Otra opciòn serìa con java en la misma pagina mediante selects o campos de texto habilitas acciones en el browser del cliente...
espero que sea eso alo que vas...
Chaop!
  #3 (permalink)  
Antiguo 06/02/2004, 13:05
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Ay, no manches, si se puede...
Código PHP:
<? // Antes que cualquier cosa pon esto
$accion=$_GET['accion'];
IF (
$accion=="si") { /* en caso de si */ }
ELSEIF (
$accion=="no") { /* en caso de no */ }
ELSE { 
?><form action="" method="GET">
  <input type="submit" name="accion" value="si">
  <input type="submit" name="accion" value="no">
</form>
Todo en la misma page... me extrañan que no sepan

Última edición por lado2mx; 06/02/2004 a las 14:50
  #4 (permalink)  
Antiguo 06/02/2004, 14:43
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
lado2mx .. cada uno tiene su nivel .. algunos más que otro .. así que no te extrañe nada .. Simplemente si conoces una solución mejor .. dila como has hecho y listo ..

Ahora .. vendría bien que explicaras como se comporta tu código .. Te lo comento por qué la solución que has dado (salvo el error tipográfico de poner el mismo value="si" a los dos botones) .. el botón HTML tomará el nombre (visual) que tiene el value= asignado .. así que si lo cambian por algo tipo " Si " (como se suele hacer para darle espacios en el botón al texto .. etc .. Así deberán hacer la comparación en PHP correspondiente.

Por otro lado .. si tenemos dos botones uno "si y otro no" con una opción por defecto (mostrar el formulario) .. podría usarse en lugar del if() .. un juego de switch() que queda más claro el código.

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 06/02/2004, 14:52
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
bueno, ya está corregido el código, solo que les digo en serio, hay gente quien necesita unas cuantas palabritas, para que despierten y aprendan mas, no lo hago por insultar nada mas, sino para que reaccionen y actuen bien.
  #6 (permalink)  
Antiguo 06/02/2004, 15:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
ok, lado2mx .. pero si tu das el código hecho sin ninguna explicación, no conseguiras que aprendan nunca sino que resolveran ese problema puntual y .. dentro de un rato volveran a preguntar algo tipo "ahora tengo 3 botones, ¿que hago?".

Yo intento poner poco código y sin embargo explicar la técnica o dar más referencias para que se informen .. El que las sigue aprende el que nó .. alguien llega y le dá el código hecho, resuelve el problema y hasta el próximo tropiezo que tengan ..

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 06/02/2004, 16:49
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
Bueno Por Otro lado creo haber malentendido la pregunta de JUANCHE...
De todas maneras gracias lado2mx por tu ayuda en este foro y por tus consejos...
Chaop!
  #8 (permalink)  
Antiguo 06/02/2004, 16:59
Avatar de JUANCHE  
Fecha de Ingreso: marzo-2003
Ubicación: Sevilla
Mensajes: 25
Antigüedad: 21 años, 1 mes
Puntos: 0
Bueno, al final la solución que he dado pasa por usar un campo oculto cuya declaracion evaluo en el isset . cuando entro por primera vez , se me mete en la rama else pintando el formulario....si pulso "no" el campo oculto toma valor y como el action del form es "" vuelve a cargarme la pagina, esta vez si entra ya en la rama del if ; ya no muestra el form y ejecuta el codigo de la primera rama ......

...
if ( isset ($_POST['bandera']))
{
//codigo tras pulsar el si
}
else
{
...
echo " <form action=\"\" name=\"miform\" method=\"post\">
<input type=\"hidden\" name=\"bandera\">
<input type=\"submit\" name=\"Submit\" value=\"SI\">
<input type=\"button\" name=\"boton_no\" value=\"NO\" onClick=\"window.location.href='no.htm'\">
</form>
";
}



Gracias a todos por su interés y a lado2mx decirle que nadie nace sabiendo y que me extraña q le extrañe que no sepa estas cosas. No todos tenemos el mismo nivel. En cualquier caso...de nuevo muchas gracias a todos.
__________________
------------------------------------------------------------

PREÑADO DE IDEAS BUSCANDO COMO PARIRLAS
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 00:37.