Foros del Web » Programando para Internet » PHP »

PHP OO Pasar datos entre JQuery y PHP

Estas en el tema de Pasar datos entre JQuery y PHP en el foro de PHP en Foros del Web. Hola, Tengo una serie de dudas con un codigo en JS y PHP. Duda 1 - Esta parte del codigo tengo dudas, no se si ...
  #1 (permalink)  
Antiguo 05/02/2016, 09:28
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Pasar datos entre JQuery y PHP

Hola,

Tengo una serie de dudas con un codigo en JS y PHP.

Duda 1 - Esta parte del codigo tengo dudas, no se si la funcion MetodoPasos(interruptor) esta bien declarada y las dos de los botones igual.

fichero_JS.js - Tengo dos botones (Boton 1 y boton 2) cuando haga click en uno de ellos, debo pasar el valor de la variable INTERRUPTOR, con 1 o 0, segun que boton se pinche al fichero_PHP.php mediante POST

Código Javascript:
Ver original
  1. function MetodoPasos(interruptor)
  2. {
  3.     $.ajax({
  4.         type: 'POST',
  5.         url: '../modules/moduloPasos/fichero_PHP.php',
  6.         data: interruptor,
  7.         dataType: 'json',
  8. });
  9.  
  10. $(document).ready(function() {
  11.     $('#boton_uno').click(function () {
  12.         MetodoPasos();
  13.     });
  14.     $('#boton_dos').click(function () {
  15.         MetodoPasos();
  16.     });
  17. });


Duda 2 - Creo que la forma de recoger el dato pasado por POST es correcto.

fichero_PHP.php - Aqui recoge el valor pasado por POST por el JS y llamo al metodo metodoTodos declarado en el fichero moduloPasos.php

Código PHP:
Ver original
  1. include_once (moduloPasos.php) //Los includes necesarios están correctos
  2.  
  3. $pasos= new moduloPasos();
  4. $pasos->metodoTodos($_POST['interruptor']);

En el fichero moduloPasos.php según el valor de INTERRUPTOR (Si es 0 o 1) haría unas cosas u otras.

Gracias por adelantado.
  #2 (permalink)  
Antiguo 05/02/2016, 09:42
 
Fecha de Ingreso: diciembre-2015
Ubicación: México
Mensajes: 280
Antigüedad: 8 años, 3 meses
Puntos: 20
Respuesta: Pasar datos entre JQuery y PHP

Hola amigo,
el primer detalle que observo, es que en tu función clic de ambos botones, al llamar a 'MetodoPasos()' no estás enviando ningun valor para el parámetro que recibe la función (interruptor).
El segundo detalle, es a la hora de enviar el data en tu ajax, debes indicar "nombre" y "valor"
Código Javascript:
Ver original
  1. data: 'interruptor='+interruptor ,
ó
Código Javascript:
Ver original
  1. data: { interruptor = interruptor},

Saludos!
  #3 (permalink)  
Antiguo 05/02/2016, 09:42
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 6 meses
Puntos: 145
Respuesta: Pasar datos entre JQuery y PHP

¿En qué momento declaras el valor del botón? ¿En qué momento obtenés los datos? ¿Lo envías como JSON por algún motivo?

Hasta donde interpreto, la data "interruptor" es inválida. Para enviar un solo valor como dato deberías crear un objeto con ese valor.

Revisa la consola para ver qué errores te marca.
__________________
¿Te sirvió la respuesta? Deja un +1
  #4 (permalink)  
Antiguo 05/02/2016, 09:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Pasar datos entre JQuery y PHP

Si te refieres al código Javascript sí está mal, y eso lo debiste consultar en el foro de Javascript, en cuanto al código PHP se ve bien.

Sobre el punto 2 tienes razón, es el método correcto, pero si no le pasas bien los datos desde Javascript no servirá jamás.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 05/02/2016, 10:02
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Pasar datos entre JQuery y PHP

Gracias a todos por las respuestas. Siguiendo las indicaciones he realizado estas correcciones:

Código Javascript:
Ver original
  1. function MetodoPasos(interruptor)
  2. {
  3.     var restore = restore;
  4.     $.ajax({
  5.         type: 'POST',
  6.         url: '../modules/moduloPasos/fichero_PHP.php',
  7.         data: 'interruptor='interruptor,
  8.         dataType: 'json',
  9. });
  10.  
  11. $(document).ready(function() {
  12.     $('#boton_uno').click(function () {
  13.         MetodoPasos(0);
  14.     });
  15.     $('#boton_dos').click(function () {
  16.         MetodoPasos(1);
  17.     });
  18. });


De esta forma paso directamente los valores 0 o 1, correcto?

Los botones se han definido mediante Smarty en un TPL (Esta parte esta clara y es correcta).

Gracias de nuevo!

EDITO: Por consola me saca este error por el JS: ReferenceError: invalid assignment left-hand side 8:17 -- Solucionado con: var restore = restore;

Última edición por okawa; 05/02/2016 a las 10:10
  #6 (permalink)  
Antiguo 05/02/2016, 10:12
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Pasar datos entre JQuery y PHP

A ver, estás asignando la misma variable ¿a si misma?

Cita:
var restore = restore;
No puedes asignar el valor de la derecha a la izquierda sin son exactamente la misma variable.

¿De dónde viene restore y que hace ahí si antes no lo habías puesto?

Te sugiero de verdad tomes un libro de Javascript y estudies.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 05/02/2016, 10:26
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
A ver, estás asignando la misma variable ¿a si misma?



No puedes asignar el valor de la derecha a la izquierda sin son exactamente la misma variable.

¿De dónde viene restore y que hace ahí si antes no lo habías puesto?

Te sugiero de verdad tomes un libro de Javascript y estudies.
Lo copie mal, sorry.

Es var interruptor = interruptor;
  #8 (permalink)  
Antiguo 05/02/2016, 10:27
 
Fecha de Ingreso: diciembre-2015
Ubicación: México
Mensajes: 280
Antigüedad: 8 años, 3 meses
Puntos: 20
Respuesta: Pasar datos entre JQuery y PHP

Al parecer el amigo pateketrueke es un DIOS que nunca se equivoca....
siempre que veo sus respuestas me pregunto si está en el foro para desquitar todo lo que aprendió a la mala (por lo visto )... en fin... :D

Código Javascript:
Ver original
  1. data: 'interruptor='interruptor,

debes concatenar el valor amigo!

Código Javascript:
Ver original
  1. data: 'interruptor='+interruptor,
  #9 (permalink)  
Antiguo 05/02/2016, 10:37
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por okawa Ver Mensaje
Lo copie mal, sorry.

Es var interruptor = interruptor;
Es lo mismo, no importa que variable uses o como la llames, si la intentas asignar hacia si misma dará un error: siempre.

Además esa linea está de sobra porque interruptor ya se recibe como argumento de la función.

Cita:
Al parecer el amigo pateketrueke es un DIOS que nunca se equivoca....
Claro que me equivoco, ¿o crees que no?

Me imagino que tu prefieres dar el código sin explicar como funciona, así como corregir código de otros sin explicarles por qué estaba mal.

Saludos.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 05/02/2016, 10:44
 
Fecha de Ingreso: diciembre-2015
Ubicación: México
Mensajes: 280
Antigüedad: 8 años, 3 meses
Puntos: 20
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
Claro que me equivoco, ¿o crees que no?
Por supuesto q lo haces, pero me imagino q tu mismo crees q no

Cita:
Iniciado por pateketrueke Ver Mensaje
Me imagino que tu prefieres dar el código sin explicar como funciona, así como corregir código de otros sin explicarles por qué estaba mal.
Cuando entré al foro fue para pedir ayuda y ayudar en lo posible, si veo un POST que al menos tiene algo de código (realizado por la persona, porque hay muchos que solo copian y pegan) trato de ayudar, pero al parecer a ti te gusta mucho ser sarcástico y hasta cierto punto tratas de hacer menos a los que preguntan...
yo solo te digo.... recuerda como empezaste amigo...
a menos que hayas nacido sabiendo todo
  #11 (permalink)  
Antiguo 05/02/2016, 10:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por german_1441 Ver Mensaje
yo solo te digo.... recuerda como empezaste amigo...
En mis tiempos no había foros: había que descargarse los manuales, leerlos poco a poco y practicar hasta dominar el problema; además tampoco tenía Internet en casa y aún así me desvelaba leyendo y practicando.

Hoy es muy fácil darse por vencido en un par de horas e ir al foro a pedir auxilio.

Así no empecé yo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 05/02/2016, 10:55
 
Fecha de Ingreso: diciembre-2015
Ubicación: México
Mensajes: 280
Antigüedad: 8 años, 3 meses
Puntos: 20
Respuesta: Pasar datos entre JQuery y PHP

Si claro.... el clásico pensamiento... y perdón por las palabras...

"Si yo me chingue que se chinguen los demás"

Jajaja... pero bueno, cuestión de enfoques y vivencias

Saludos, nunca fue mi intención insultarte a ti como persona

Además, veo que somos paisanos jaja
  #13 (permalink)  
Antiguo 05/02/2016, 11:33
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por german_1441 Ver Mensaje
Al parecer el amigo pateketrueke es un DIOS que nunca se equivoca....
siempre que veo sus respuestas me pregunto si está en el foro para desquitar todo lo que aprendió a la mala (por lo visto )... en fin... :D

Código Javascript:
Ver original
  1. data: 'interruptor='interruptor,

debes concatenar el valor amigo!

Código Javascript:
Ver original
  1. data: 'interruptor='+interruptor,
Gracias por la ayuda! Lo tenia concatenado tal que asi:

Código Javascript:
Ver original
  1. data: 'interruptor='+interruptor,

Pero aun asi la consola me daba ese error el cual se soluciono con lo de:

var interruptor = interruptor;

  #14 (permalink)  
Antiguo 05/02/2016, 12:57
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por okawa Ver Mensaje
Pero aun asi la consola me daba ese error el cual se soluciono con lo de:

var interruptor = interruptor;

Por favor vuelve a leer mis respuesta: esa linea no hace falta.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #15 (permalink)  
Antiguo 07/02/2016, 07:23
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Pasar datos entre JQuery y PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
Por favor vuelve a leer mis respuesta: esa linea no hace falta.
Disculpa, es que la consola me dio el error que dije antes. Mire guías y decían que era por eso.

Pero lo he quitado y ya no lanza el error por consola...nose igual era otra cosa que estaba mal.

Etiquetas: jquery, variable
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 01:25.