El script funciona asi..
Maps_form tiene un formulario, este envia los datos a una BD a traves de un POST en el mismo documento, luego otro archivo lee la BD y genera un XML que al mismo tiempo maps_form lee..
Pueden ver como funciona acá
http://www.residenciaslaredo.com/ett/maps_form.php
Ahora el problema está, en que al solo entrar a la URL antes mencionada, se crea un registro en la BD... obviamente sin nada. El form funciona a la perfección pero como digo, se genere al solo entrar al maps_form
Acá el código
Código PHP:
<?
mysql_connect("localhost","cr000796_ett","ett");
mysql_select_db("cr000796_ett");
$unidad=$_POST['unidad'];
$ubicacion=$_POST['ubicacion'];
$comentario=$_POST['comentario'];
$lat=$_POST['lat'];
$lng=$_POST['lng'];
mysql_query("insert into punto (unidad,ubicacion,comentario,lat,lng) values ('$unidad','$ubicacion','$comentario','$lat','$lng')");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Formularios en Google Maps</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAIIDbl_ciQDacBgo0AqmyUBTP57_sWC09JVsUBjOq_8dmqEYAyhQECq8os4J_NHYLLdNy5_s2IW_4cw" type="text/javascript"></script>
<script src="jquery-1.2.6.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
var mark;
var pointA;
if (GBrowserIsCompatible()) {
var m = $("#map")[0];
if(m) {
var map = new GMap2(m);
// iniciamos el mapa en esta ubicacion, tu puedes ubicarla donde gustes
var start = new GLatLng(-27.332735,-70.312500);
// otras configuraciones
var zoomLevel = 10;
map.setCenter(start, zoomLevel);
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
// lectura del archivo markers.xml con jQuery
$.get('generadorxml.php',function(data) {
$(data).find('marker').each(function(){
var lat = $(this).attr('lat');
var lng = $(this).attr('lng');
var html = $(this).attr('unidad')+"<br />";
html += $(this).attr('ubicacion')+"<br />";
html += $(this).attr('comentario');
var point = new GLatLng(lat,lng);
var marker = new GMarker(point);
map.addOverlay(marker);
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml(html);
});
});
});
// en cada nueva marca aparecerá el formulario HTML
GEvent.addListener(map, 'click', function(overlay, point){
if(mark) {
map.removeOverlay(mark);
}
if(point) {
pointA = new GPoint(point.x, point.y);
mark = new GMarker(pointA);
map.addOverlay(mark);
map.getCenter(point);
var lat = point.y;
var lng = point.x;
var form =
"<form action=\"maps_form.php\" method=\"post\">"+
"<input type=\"hidden\" name=\"lat\" value=\""+lat+"\" />"+
"<input type=\"hidden\" name=\"lng\" value=\""+lng+"\" />"+
"Unidad:<input type=\"text\" name=\"unidad\" value=\"\" /><br />"+
"Ubicación:<input type=\"text\" name=\"ubicacion\" value=\"\" /><br />"+
"Comentarios:<input type=\"text\" name=\"comentario\" value=\"\" /><br />"+
"<input type=\"submit\" name=\"submit\" value=\"Publicar\" />"+
"</form>";
map.openInfoWindowHtml(point,form);
}
});
}
}
});
</script>
</head>
<body>
<!-- obviamente el area de nuestro mapa -->
<div id="map" style="width:1000px;height:600px;"></div>
</body>
</html>
Luego refrescan ambas y verán a que me refiero.