Foros del Web » Programando para Internet » Javascript »

Javascript en PHP y este dentro de Javascript

Estas en el tema de Javascript en PHP y este dentro de Javascript en el foro de Javascript en Foros del Web. Hola a todos! Es mi primer mensaje (como podreis ver :D). Siempre que he tenido dudas Googleando he llegado a esta página, así que ante ...
  #1 (permalink)  
Antiguo 06/06/2012, 04:26
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Javascript en PHP y este dentro de Javascript

Hola a todos!
Es mi primer mensaje (como podreis ver :D). Siempre que he tenido dudas Googleando he llegado a esta página, así que ante una duda que no consigo resolver por más que lo busque he intente de mil formas diferentes, he decidido registrarme y ver si alguien sabe como resolverlo.

Bueno, os explico: Estoy haciendo una web y la cosa es que tengo un código PHP dentro de JavaScript para hacer unas consultas a una base de datos. La cosa es que necesito que en el WHERE del PHP estén presentes unas variables del JavaScript, por lo que hago es escribir "<javascript> document.write(xLat) </javascript>" dentro de todo el churro de la variable query en PHP. La cosa es que esto no funciona y me da que es porque cuando cierro la etiqueta script realmente cierra la primera script en vez de la que hay dentro del PHP. Esto lo he descubierto porque he sustituido la etiqueta <script> que hay dentro del PHP por la etiqueta <javascript>, simplemente para hacer la prueba... Y la pagina se ha visualizado bien pero no las variables (como ya iba a suponer ya que la etiqueta javascript no existe).

Así que tengo ahora mismo esa cosa... Que necesito incluir Javascript dentro de PHP que a su vez está dentro de un JavaScript...

¿Alguien que me ilumine?
  #2 (permalink)  
Antiguo 06/06/2012, 05:02
Avatar de diamari  
Fecha de Ingreso: marzo-2012
Mensajes: 95
Antigüedad: 12 años
Puntos: 30
Respuesta: Javascript en PHP y este dentro de Javascript

No puedes colocar un etiqueta script dentro de el mismo que es lo que entiendo que estas haciendo. Si lo que estas escribiendo es solo js dentro de ella ni siquiera es necesario. Simplemente usa php para escribir document.write(xLat) dentro de la etiqueta original.
  #3 (permalink)  
Antiguo 06/06/2012, 05:16
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Javascript en PHP y este dentro de Javascript

Tienes un error de conceptos....

javascript se ejecuta en el lado cliente
php se ejecuta en el lado servidor

luego no se ven el uno al otro... javascript puede llamar por AJAX o directamente una pagina.php y al hacer esa llamada puede pasar por GET o POST parametros que pueden ser el valor de variables a esa pagina.php. Esta, la pagina.php, tiene que leer esos parametros para que se tengan en cuenta en el momento de ejecutar el script php (en el servidor) y retornar al cliente el resultado.

Pedes crear un script javascript que se construya a partir de alguna parte en php pero ese php nunca podrà usar variables del propio javascript que esta construyendo... los momentos de ejecución son distintos... parecera un script que se auto construya pero son dos scripts distinto que se ejecutan en momentos distintos...

Incluso puedes tener un fichero así "nombre.js.php" si esta bien

1. el servidor lo leerá como un php y generará un resultado que mandará al cliente, si este resultado es un script js válido

2. el navegador lo leerá como un .js normal puesto que recibira las partes php una vez ejecutadas en el servidor....

no se si me explico.

Si la fuente és

<javascript>
... el codigo js que sea...
<?php
...el codigo php que sea...
?>
... mas codigo js....
</javascript>

el navegador (cliente) recibe

<javascript>
... el codigo js que sea...
...RESULTADO del codigo php que sea...
... mas codigo js....
</javascript>

la parte javascript aún no se ha ejecutado (la ejecuta el cliente) y ya esta el resultado de la parte PHP ya que la ejecuta el Servidor.

Inversamente si la fuente es

<?php
...codigo php...
?>
<javascript>
...codigo js....
</javascript>
<?php
...mas codigo php...
?>

El servidor ejecuta las partes php sin ni mirar las partes js y el cliente recibe


...RESULTADO del codigo php que sea...
<javascript>
... el codigo js que sea...
</javascript>
...RESULTADO del codigo php que sea...


Lo que intentas hacer es psible que se pueda hacer peró habria que ver que es lo que intentas para decirte como...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 06/06/2012 a las 05:39
  #4 (permalink)  
Antiguo 06/06/2012, 05:53
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Javascript en PHP y este dentro de Javascript

Hola a los 2!

Gracias por las respuestas. Tengo clarisimo que JavaScript es cliente y PHP es servidor, por supuestísimo. Y más en las alturas que estoy ahora mismo

Os explico un poco el tema... La cosa es que dado un evento de JavaScript gestionado con un onhandle, necesito ejecutar una query php que recupere datos de una base de datos, pero esta query utiliza unas variables que están en JavaScript.

Entiendo que no puede haber un script dentro de otro, pero sigo necesitando pasarle esas variables al PHP...
  #5 (permalink)  
Antiguo 06/06/2012, 06:03
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Javascript en PHP y este dentro de Javascript

Como llamas ese php

var variablejs1=XX
var variablejs2=YY

..... nombre.php?nombreparametro1="+variablejs1+"&nombre parametro2="+variablejs2....


luego nombre.php debe leer esos parametros y usarlos....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #6 (permalink)  
Antiguo 06/06/2012, 06:07
Avatar de diamari  
Fecha de Ingreso: marzo-2012
Mensajes: 95
Antigüedad: 12 años
Puntos: 30
Respuesta: Javascript en PHP y este dentro de Javascript

A pues si ese es el caso necesitas ajax, puede ejecutar código de servidor (php, asp). Puedes enviarle variables y recibirlos. Lo que hace ajax es activar una pagina (php, asp) a este le puedes enviar, a travez de post o get, variables necesarias y si este devuelve un valor recibirla.
  #7 (permalink)  
Antiguo 06/06/2012, 06:15
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Javascript en PHP y este dentro de Javascript

Se llama accion.php... Por decirlo de alguna forma es la página donde sucede toda la acción principal

Quería hacerlo de la forma más transparente posible, y tanto el PHP como el JavaScript están en la mísma página... No son ficheros diferentes... Voy a intentar hacer unas modificaciones con esto que me comentas, Quim. Si consigo algo os cuento un poco más el tema de que iba por si a alguien más le sirve

Gracias
  #8 (permalink)  
Antiguo 06/06/2012, 06:18
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Javascript en PHP y este dentro de Javascript

Diamari, no tenía ideas de utilizar Ajax, pero creo que me va a tocar pasar por el tubo... Voy a valorar las 2 opciones y os cuento
  #9 (permalink)  
Antiguo 06/06/2012, 06:41
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Javascript en PHP y este dentro de Javascript

Lo que debes tener en cuenta es que el mismo script js no va a seguir ejecutandose... si como dices el php esta en la misma pagina puedes llamar a la misma pagina recursivamente y recibirá los parametros pero no continuara la ejecución del script js.

Con ajax quizas se podria intentar actualizar una parte de la pagina y que el script la lea una vez recibido el resultado de AJAX.... en este caso deberían ser ficheros distintos....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #10 (permalink)  
Antiguo 06/06/2012, 08:52
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Javascript en PHP y este dentro de Javascript

Mmmm efectivamente al hacerlo a través del método GET el JavaScript a dejado de ejecutarse... Estoy utilizando un mapa de Bing y ha dejado de responder a eventos... Creo que me va a tocar pasar por el tubo de Ajax...
Gracias por la ayuda de todos

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