Foros del Web » Programando para Internet » PHP »

Como pasar variables a través de un evento Onclick acompañado de una función.

Estas en el tema de Como pasar variables a través de un evento Onclick acompañado de una función. en el foro de PHP en Foros del Web. Buenas tardes amigos, Tengo una duda, he realizado algunas pruebas pero no he logrado el resultado que deseo, bueno les cuento necesito pasar una variable ...
  #1 (permalink)  
Antiguo 10/03/2014, 12:33
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Como pasar variables a través de un evento Onclick acompañado de una función.

Buenas tardes amigos,

Tengo una duda, he realizado algunas pruebas pero no he logrado el resultado que deseo, bueno les cuento necesito pasar una variable a través de un Onclick el cual ya esta acompañado por una funciona...

Tengo algo así;

$aa2=$aa ;

echo '<input type="button" value="continuar" onclick=\"booking('".$aa2."')\">';


Otra cosa, como haría para recibir la variable en la otra pagina y saber si la estoy pasando correctamente?

Saludos, y gracias desde ya!
  #2 (permalink)  
Antiguo 10/03/2014, 12:40
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

1. PHP y Javascript no se ejecutan en el mismo contexto, por lo tanto el código generado por PHP debe ser Javascript válido
2. Para pasar la variable con Javascript debes usar Ajax (o cambiar el valor de un <input> de manera dinámica)
3. Pasa saber si lo haces correctamente debes depurar tus scripts, ya sea usando Firebug o haciendo pruebas
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 10/03/2014, 12:50
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Gracias por tu respuesta pateketrueke, pero no me sirvió de mucho.
  #4 (permalink)  
Antiguo 10/03/2014, 12:54
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

¿Qué tipo de respuesta esperabas?

Digo, mi comentario va en razón a que parece ser que no entiendes la diferencia entre Javascript y PHP.

Tu problema, desde el punto de vista del navegador se resuelve con Javascript.

Es decir, que estás usando PHP para generar el HTML y Javascript necesario para ver en tu navegador, y si buscas pasar una variable desde ahí entonces debes resolverlo con Javascript.

PHP ya se ejecutó en el servidor, así que ahora debes preocuparte por otra cosa: el navegador.

Si no comprendes lo que te comento entonces te sugiero ser más especifica con tus dudas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 10/03/2014, 12:59
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 4 meses
Puntos: 379
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Código HTML:
Ver original
  1. $aa2=$aa ;
  2.  
  3. echo '<input type="button" value="continuar" onclick=\"booking('".$aa2."')\">';

Esto no es suficiente para que alguien te pueda ayudar. Si quieres ayuda mejora tu explicación y agrega el código necesario para saber que estas haciendo.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #6 (permalink)  
Antiguo 10/03/2014, 22:12
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Ok amigo!!!

Tengo algo así en la pagina desde donde necesito enviar la variable;

<script type="text/javascript" language="javascript">

function enviar()
{

valor=document.getElementById['$aa'].value;
location.href='/code/fami/boaa.php?variable='+valor;

}
</script>



echo '<input type="button" value="continuar" onclick="enviar();"';





y en la pagina donde Recibo, tengo lo siguiente;



<script type="text/javascript">

function enviar($aa){


new Ajax.Request( 'boaa.php' , {


method: 'post',



onSuccess: function(enviar) {
var resultados = ("$aa");
resultados.innerHTML=transport.responseText;
}
});
}

</script>


Según aportes investigados, he realizado algunas pruebas.


Pero no funciona, agradezco su ayuda,

Gracias desde ya ;)!!!
  #7 (permalink)  
Antiguo 10/03/2014, 22:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Yo sigo viendo el mismo problema: confundes PHP con Javascript.

Entiende que no puedes ejecutarlos en el mismo contexto, Javascript se ejecuta en el navegador y PHP en el servidor.

No hay forma de comunicarlos directamente, es decir, en el mismo lenguaje y contexto.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 11/03/2014, 05:24
 
Fecha de Ingreso: marzo-2014
Ubicación: Paraguay
Mensajes: 12
Antigüedad: 10 años, 8 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Buenas. Voy a tratar de hacer un analisis de tu codigo y de lo que pedis.

pateketrueke tiene razon, la pregunta es, soles usar javascript?
Tenes algo asi:

Código PHP:
Ver original
  1. echo '<input type="button" value="continuar" onclick="enviar();"';
'te falto un '>' eso fue medio chisteando.

ahora ni siquiera sabemos cual es tu codigo real, osea lo sgte es una suposicion

Código Javascript:
Ver original
  1. function enviar()
  2. {
  3.  
  4. valor=document.getElementById['$aa'].value;
  5. location.href='/code/fami/boaa.php?variable='+valor;
  6.  
  7. }
  8. </script>

usas asi, $aa es el id de tu target(?)
no me explico eso, lo conveniente seria algo asi
Código HTML:
Ver original
  1. <input type="text" id="SoyTuId" value="hola">
o algo asi
Código HTML:
Ver original
  1. <input type="text" id="SoyTuId" value="<?php echo"$var1"; ?>">
y recuperas en javascript asi:
Código Javascript:
Ver original
  1. function enviar()
  2. {
  3.  
  4. valor=document.getElementById['SoyTuId'].value;
  5. location.href='/code/fami/boaa.php?variable='+valor;
  6.  
  7. }

Para recuperar en la otra pagina yo haria de otra forma, asi:
Código PHP:
Ver original
  1. <?php
  2. if ($_GET['variable']){
  3.     $saludo = $_GET['variable'];
  4. }
  5. ?>

espero que hayas entendido, y que te ayude.
Perdon por cualquier error de tipeo es que cuando iba a enviar la primera vez se desconecto y no guardo nada y tuve que rehacer con menos paciencia.
  #9 (permalink)  
Antiguo 11/03/2014, 15:13
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Gracias por tu gran aporte pateketrueke


Pero no logro recibir la variable en la otra pagina.


Guiándome por tus recomendaciones... He probado con lo siguiente;


<form action="" method="post">
<input type="hidden" id="vartotal" name="vartotal" value="<?php echo"$aa"; ?>"/>
</form>

<script type="text/javascript" language="javascript">


function enviar()
{

valor=document.getElementById['vartotal'].value;
location.href='/server/book.php?variable='+valor;

}
</script>


Esto es donde tomo la variable, allí todo bien...

Pero cuanto paso para la otra pagina que es server/book.php, necesito traerme la variable $aa, para ello coloque lo siguiente;


if ($_POST['vartotal']){
$aa1 = $_POST['vartotal'];
echo '$aa1';
}



Y nada :(, agradecida y atenta a sus aportes y recomendaciones,


Sigo probando..
  #10 (permalink)  
Antiguo 11/03/2014, 15:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Los enlaces no producen una petición de tipo POST, lo que producen es una petición tipo GET, por lo tanto debes usar $_GET en lugar de $_POST.

¿Alcanzas a ver dicho valor en la barra de direcciones?

Si es así entonces se está pasando bien el valor.

Ahora, el asunto es que para pasar variables desde un formulario NO requieres Javascript.

Lee el siguiente manual: http://www.php.net/variables.external

PDTA: el aporte no es mío sino de devilla, él sí tiene paciencia.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 11/03/2014, 22:15
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Cierto, muchas gracias por tu gran aporte devilla, muy bueno!


Si pero pasa que necesito pasar la variable a través de una función, porque el botón que uso ya trabaja con una, entonces quiero sumarle otra función para traerme la variable $aa, es algo así; onclick="booking();enviar();


Hasta allí todo bien, pero no recibo nada en la siguiente pagina. :(


Que modificaciones sugieren para el código que tengo?


Saludos... yo sigo probando, les aviso si logro la respuesta que quiero..
  #12 (permalink)  
Antiguo 12/03/2014, 07:10
 
Fecha de Ingreso: marzo-2014
Ubicación: Paraguay
Mensajes: 12
Antigüedad: 10 años, 8 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

esto ya es mas para el foro de javascript que para el de php, pero te voy a guiar:
te recomiendo usar asi: en el evento onClick usar una funcion y dentro de esa llamar a la otra:


Código PHP:
Ver original
  1. <?php $aa = "xvalor"; ?>

Código HTML:
Ver original
  1. <input type="button" id="hola" onClick="booking('<?php echo $aa; ?>');" />

si vas a usar 2 funciones te recomiendo usar asi:

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.             function booking(valor){
  3.                 alert(hola); //solo para saber que valor tiene no es necesario
  4.                 //y todas las lineas que necesite tu funcion
  5.                 //y luego llamas a la segunda funcion
  6.                 enviar(valor)
  7.                 }
  8.  
  9.                 function enviar(valor){
  10.                     location.href="/server/book.php?variable="+valor;
  11.                 }
  12. </script>

como te dijo pateketrueke verifica en la barra de direccion si pasa el valorç
y para recibir el valor tenes que usar $_GET no $_POST

espero te ayude yo lo probe y funciona.

Última edición por devilla; 12/03/2014 a las 07:14 Razón: me equivoque en el nombre de un variable
  #13 (permalink)  
Antiguo 12/03/2014, 09:06
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Hola devilla

Muchas Gracias por tus valiosos aportes,


Realice las Pruebas con la primera opción;

<form action="" method="GET">
<input type="hidden" id="vartotal" name="vartotal" value="<?php echo"$aa"; ?>"/>
</form>



echo '<input type="button" value="continuar" onclick="booking($aa)" ';


y recojo la variable así en la siguiente pagina;

<?

$aa1 = $_GET['vartotal'];
echo 'hhhhooooo';
echo '$aa1';
echo 'lllllaaaa';

echo 'prueba';

?>

y nada, me muestra en el navegador: hhhhooooo$aa1lllllaaaaprueba

que estoy haciendo mal?? :(


Sigo probando, agradecida...
  #14 (permalink)  
Antiguo 12/03/2014, 09:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Consulta un manual por favor.

Código PHP:
Ver original
  1. // MAL
  2.  echo '$aa1';
  3.  
  4. // BIEN
  5.  echo $aa1;
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #15 (permalink)  
Antiguo 12/03/2014, 09:36
 
Fecha de Ingreso: junio-2010
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Como pasar variables a través de un evento Onclick acompañado de una funci

Ok, ahora no funciona, no hace nada el Botón, empeoro :(



echo '<input type="button" value="Pagar Itinerario" onclick="booking($aa)" ';



Recibo en otra pagina;

<?

$aa1 = $_GET['vartotal'];
echo 'hhhhooooo';
echo $aa1;
echo 'lllllaaaa';

echo 'prueba';

?>

Etiquetas: evento, onclick, variable, variables
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 14:09.