Foros del Web » Programando para Internet » PHP »

Enviar clase PHP a Ajax

Estas en el tema de Enviar clase PHP a Ajax en el foro de PHP en Foros del Web. Des de php envio la siguiente clase (con print_r): Offer Object ( [id:Offer:private] => 46 [name:Offer:private] => offer_001 [insertion_date:Offer:private] => 2012-02-24 ) Pero en js ...
  #1 (permalink)  
Antiguo 27/02/2012, 10:11
 
Fecha de Ingreso: abril-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 0
Enviar clase PHP a Ajax

Des de php envio la siguiente clase (con print_r):

Offer Object
(
[id:Offer:private] => 46
[name:Offer:private] => offer_001
[insertion_date:Offer:private] => 2012-02-24
)

Pero en js lo recibo como string, no como clase. ¿cómo se codifica?

Gracias de antemano !
  #2 (permalink)  
Antiguo 27/02/2012, 10:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Enviar clase PHP a Ajax

Puedes usar JSON para eso, usa json_encode() desde PHP para transformar el objeto en un objeto JSON, y con este puedes leerlo en Javascript.

Saludos.
  #3 (permalink)  
Antiguo 27/02/2012, 10:19
 
Fecha de Ingreso: abril-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 0
Respuesta: Enviar clase PHP a Ajax

echo json_encode($of);

si hago un alert de los datos que recibo me llega:
{}
  #4 (permalink)  
Antiguo 27/02/2012, 10:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Enviar clase PHP a Ajax

Eso es porque json_encode no te va a codificar las variables privadas (como los tienes en tu ejemplo) tienes que pasarlos a propiedades publicas, o en dado caso a un array.

Saludos.
  #5 (permalink)  
Antiguo 27/02/2012, 10:33
 
Fecha de Ingreso: abril-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 0
Respuesta: Enviar clase PHP a Ajax

Ahora recibo esto en la variable datos:

{"id":"46","name":"offer_001","insertion_date":"20 12-02-24"}

pero ni datos.id, ni datos[0] devuelven el valor.

¿cómo lo debería recojer?

Gracias por tu tiempo.
  #6 (permalink)  
Antiguo 27/02/2012, 10:37
 
Fecha de Ingreso: abril-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 0
Respuesta: Enviar clase PHP a Ajax

La función eval es tu amiga ! ;)
  #7 (permalink)  
Antiguo 27/02/2012, 10:38
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: Enviar clase PHP a Ajax

por que estando en javascript debes converitir el objeto json a por ejemplo un array.

con parseJSON de jquery es más que suficiente. Saludos.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.

Etiquetas: ajax, clase
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:38.