Foros del Web » Programando para Internet » Javascript »

Imprimir variable php dentro de javascript no funciona

Estas en el tema de Imprimir variable php dentro de javascript no funciona en el foro de Javascript en Foros del Web. Buenas, Tengo un script en javascript que genera un gráfico, y quiero pasarle el array (con los valores) a través de una variable php pero ...
  #1 (permalink)  
Antiguo 04/01/2010, 09:47
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Imprimir variable php dentro de javascript no funciona

Buenas,

Tengo un script en javascript que genera un gráfico, y quiero pasarle el array (con los valores) a través de una variable php pero no hay manera.

Trozo donde coge los valores en javascript

}, {
name: 'London',
data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
}]



Y así es como lo estoy intentando introducir desde una variable php

<?
$valores=array(7.0, 6.9, 9.5, 14.5, 18.4, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6);
?>


}, {
name: 'London',
data: <? echo $valores; ?>
}]


Cuando cargo la página me aparece en blanco, pero mirando el codigo fuente he visto que no "vuelca" el valor del array
series: [{
name: 'London',
data: Array }, {


Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 04/01/2010, 10:00
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Imprimir variable php dentro de javascript no funciona

no puedes imprimirlo asi sin mas porque, como ya viste, no esta volcando el contenido. entiendase que php no es igual que javascript. en javascript, hay valores que aunque son objetos, cuando se intenta mostrar por pantalla automaticamente se convierte a la representacion de string. creo que php no hace eso salvo con algunas funciones especificas como print_r y var_dump. pero igual es una representacion que javascript no entiende. tienes que convertir ese valor a uno que javascript pueda entender. por ejemplo, dado que php muestra los string tal como estan, puedes usar la funcion implode de php para crear un string basado en el contenido del array, pero javascript lo entendera como datos numericos.
Código:
data: <?php echo implode($valores, ', '); ?>
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 04/01/2010, 10:15
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Imprimir variable php dentro de javascript no funciona

Cita:
Iniciado por zerokilled Ver Mensaje
no puedes imprimirlo asi sin mas porque, como ya viste, no esta volcando el contenido. entiendase que php no es igual que javascript. en javascript, hay valores que aunque son objetos, cuando se intenta mostrar por pantalla automaticamente se convierte a la representacion de string. creo que php no hace eso salvo con algunas funciones especificas como print_r y var_dump. pero igual es una representacion que javascript no entiende. tienes que convertir ese valor a uno que javascript pueda entender. por ejemplo, dado que php muestra los string tal como estan, puedes usar la funcion implode de php para crear un string basado en el contenido del array, pero javascript lo entendera como datos numericos.
Código:
data: <?php echo implode($valores, ', '); ?>
Ajam! perfecto zerokilled muchas gracias!

Etiquetas: php, 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 15:11.