Foros del Web » Programando para Internet » Javascript »

Consulta PHP+Javascript+Google maps

Estas en el tema de Consulta PHP+Javascript+Google maps en el foro de Javascript en Foros del Web. Buenas! ¿Qué tal?. Ando con un proyecto liado y llevo días encayado en una situación. Al final, tras no dar con la solución y tras ...
  #1 (permalink)  
Antiguo 08/11/2011, 12:56
 
Fecha de Ingreso: marzo-2005
Mensajes: 51
Antigüedad: 19 años, 8 meses
Puntos: 0
Pregunta Consulta PHP+Javascript+Google maps

Buenas! ¿Qué tal?. Ando con un proyecto liado y llevo días encayado en una situación. Al final, tras no dar con la solución y tras probar mil cosas, he decidido dejar un mensaje aquí a ver si alguien me puede orientar.

Resumiento el proyecto:
- Un google maps que carga datos mediante un php de una base de datos en mysql.
- Creo las marcas y les asigno un ID (que es el mismo que sale de la BD). Este ID se guarda en una variable en javascript (dentro del script del google maps)

El problema:
Quiero almacenar en la BD cuantas veces se ha clicado en esa marca, ya que me interesa saber 'las visitas'.
La intención es que cuando se abre el infowindows del google maps, y mediante un evento del tipo GEvent.addListener(marker, 'click', function() se ejecute la acción.
El problema que me encuentro es que la variable ID la tengo en Javascript, y el update a la BD lo tengo que hacer mediante PHP, y me es imposible (por más que lo he probado, incluso con cookies -que no me sirve-) no puedo hacer saltar ese ID a la consulta de SQL para utilizarlo como un WHERE ID=....

¿Alguna orientación por favor?. Saludos y gracias!

El código más o menos:


GEvent.addListener(marker, 'click', function() {

var id = id_ventana //esta variable existe y recoge el valor correctamente

<?php
$sql = "UPDATE mitabla SET campo=campo+1 WHERE id = ".$id_ventana.";";
$conexion = mysql_query($sql, $mysql_connect) or die(mysql_error());
?>

});

El problema es que $id_ventana no recoge valor, y no sé cómo lanzar la query
  #2 (permalink)  
Antiguo 08/11/2011, 15:01
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 6 meses
Puntos: 71
Respuesta: Consulta PHP+Javascript+Google maps

Hola Karmo

en primer lugar la sentencia que redactaste es incorrecta... puesto que no se puede meter php dentro de un archivo JavaScript...


GEvent.addListener(marker, 'click', function() {

var id = id_ventana //esta variable existe y recoge el valor correctamente

<?php
$sql = "UPDATE mitabla SET campo=campo+1 WHERE id = ".$id_ventana.";";
$conexion = mysql_query($sql, $mysql_connect) or die(mysql_error());
?>

});



para que puedas enviar el valor de una variable desde JS a PHP debe ser de esta manera

archivo.php?variable1=valor

tu función debería ser algo asi por el estilo...


Código Javascript:
Ver original
  1. GEvent.addListener(marker, 'click', function() {
  2.    var id = id_ventana;
  3.    archivo.php?id_ventana=id;
  4. }

y en php recibes el valor de esta manera:

Código PHP:
Ver original
  1. $id_ventana = $_REQUEST['id_ventana'];
  2. $sql = "UPDATE mitabla SET campo=campo+1 WHERE id = ".$id_ventana.";";
  3. $conexion = mysql_query($sql, $mysql_connect) or die(mysql_error());

de esta manera deberias poder recibir el valor

Saludos y Éxito.
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #3 (permalink)  
Antiguo 08/11/2011, 15:49
 
Fecha de Ingreso: marzo-2005
Mensajes: 51
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: Consulta PHP+Javascript+Google maps

Hola Hugo_Euan, gracias por la respueta (más rápida de lo que me esperaba)

Bueno.

Haciedo pruebas he podido ejecutar php dentro del javascript. Tipo echos y tal y cosas simples.

Lo que comentas, por lo que parece, te llevaría a otra página no? tipo pasar variables por URL.

El tema es que no me interesa que se salga de la página. Sólo que se registre el clik de la marca de google maps, y que el usuario pueda seguir navegando por el mapa, por si hace otros cliks en otras marcas.

Si no me he explicado correctamente, por favor, dímelo e intento exponerlo de otra manera.
  #4 (permalink)  
Antiguo 08/11/2011, 15:58
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 6 meses
Puntos: 528
Respuesta: Consulta PHP+Javascript+Google maps

Podrías aumentar el valor de un campo oculto con cada clic, y al final, pasar el valor por url, al dar clic en algún botón o enlace.
Pero si se salen de la página sin dar ese clic, el conteo no será capturado.

Otra opción es que con cada clic llames una función php mediante ajax que registre dichos clics.

Si no sabes mucho de ajax y te urge, te recomiendo utilizar xajax, una librería muy fácil de usar, y de la que puse algún ejemplo por ahí.
  #5 (permalink)  
Antiguo 08/11/2011, 22:52
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 6 meses
Puntos: 71
Respuesta: Consulta PHP+Javascript+Google maps

Hola de nuevo Karmo...

pues bien.. esa parte no la habia entendido.. si deseas enviar variables.. sin necesidad de recargar la pagina puedes hacerlo con Iframes... anque el uso de ellos no es meramente recomendado salvo algunos casos.... pero tambien puedes hacerlo mediante AJAX de ser así puedes leer este post.. ahi hay un link de la libreria jQuery que habla sobre el uso de Ajax..

Saludos y Éxito.

http://www.forosdelweb.com/f13/envia...4/#post3875905
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!

Etiquetas: gevent.addlistener, google, maps, mysql, 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 12:43.