Learn how to pass Lat Long to HTML file to show the location on Google map.

A study of page source of the following html page may help.

http://www.replyat.com/Gadget_How_to_show_location.htm?input=40.1718=-105.105=Longmont,%20Colorado,%20United%20States=US


On Wed, Oct 26, 2011 at 10:54 PM, needgooglemaphelp
<[email protected]>wrote:

> http://www.pesttrackers.com/func.inc.php
>
> I have a map that is connected to my db and I have a file that
> geocodes the address in my db. It does not do this automatically
> though. How do I incorporate this into the script for it to auto
> geocode the address and then the address will show up automatically on
> the map with the info and the marker.
>
> Where does my file that geocodes the address go? So it can be called
> automatically to work. I followed the tut on geocoding the address.
> Please help and advise.
>
> Here is the script that geocodes the address if that helps any:
>
> <?php
> require("mysql_connect.php");
>
> define("MAPS_HOST", "maps.google.com");
> define("KEY", "ABQIAAAA_YVHg1YHvpalent78-
> SSihTz2Lg5IvdPwr5sjTZ1lEkB4NZA5RQW5S9NAp-526dMo3JeAKa8Ca-s_g");
>
> // Opens a connection to a MySQL server
> $conn = mysql_connect($dbhost, $dbusername,$dbpass,$dbname);
>
>        mysql_select_db($dbname);
> if (! $conn)
> die(mysql_error());
>
>
> // Select all the rows in the markers table
> $query = "SELECT * FROM markers WHERE 1";
> $result = mysql_query($query);
> if (!$result) {
>  die("Invalid query: " . mysql_error());
> }
>
> // Initialize delay in geocode speed
> $delay = 0;
> $base_url = "http://"; . MAPS_HOST . "/maps/geo?output=csv&key=" . KEY;
>
> // Iterate through the rows, geocoding each address
> while ($row = @mysql_fetch_assoc($result)) {
>  $geocode_pending = true;
>
>  while ($geocode_pending) {
>    $address = $row["address"];
>    $id = $row["id"];
>    $request_url = $base_url . "&q=" . urlencode($address);
>    $csv = file_get_contents($request_url) or die("url not loading");
>
>    $csvSplit = split(",", $csv);
>    $status = $csvSplit[0];
>    $lat = $csvSplit[2];
>    $lng = $csvSplit[3];
>    if (strcmp($status, "200") == 0) {
>      // successful geocode
>      $geocode_pending = false;
>      $lat = $csvSplit[2];
>      $lng = $csvSplit[3];
>
>      $query = sprintf("UPDATE markers " .
>             " SET lat = '%s', lng = '%s' " .
>             " WHERE id = %s LIMIT 1;",
>             mysql_real_escape_string($lat),
>             mysql_real_escape_string($lng),
>             mysql_real_escape_string($id));
>      $update_result = mysql_query($query);
>      if (!$update_result) {
>        die("Invalid query: " . mysql_error());
>      }
>    } else if (strcmp($status, "620") == 0) {
>      // sent geocodes too fast
>      $delay += 100000;
>    } else {
>      // failure to geocode
>      $geocode_pending = false;
>      echo "Address " . $address . " failed to geocoded. ";
>      echo "Received status " . $status . "
> \n";
>    }
>    usleep($delay);
>  }
> }
> ?>
>
>
> phpsqlsearch_genxml.php (the file that the map calls out):
>
> <?php
> require("mysql_connect.php");
>
> // Get parameters from URL
> $center_lat = $_GET["lat"];
> $center_lng = $_GET["lng"];
> $radius = $_GET["radius"];
>
> // Start XML file, create parent node
> $dom = new DOMDocument("1.0");
> $node = $dom->createElement("markers");
> $parnode = $dom->appendChild($node);
>
> // Opens a connection to a mySQL server
> $conn = mysql_connect($dbhost, $dbusername,$dbpass,$dbname);
>
>        mysql_select_db($dbname);
> if (! $conn)
> die(mysql_error());
>
>
>
> // Search the rows in the markers table
> $query = sprintf("SELECT address, name, lat, lng, ( 6371 *
> acos( cos( radians('%s') ) * cos( radians( lat ) ) *
> cos( radians( lng ) - radians('%s') ) + sin( radians('%s') ) *
> sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance <
> '%s' ORDER BY distance LIMIT 0 , 20",
>  mysql_real_escape_string($center_lat),
>  mysql_real_escape_string($center_lng),
>  mysql_real_escape_string($center_lat),
>  mysql_real_escape_string($radius));
> $result = mysql_query($query);
>
> if (!$result) {
>  die("Invalid query: " . mysql_error());
> }
>
> header("Content-type: text/xml");
>
> // Iterate through the rows, adding XML nodes for each
> while ($row = @mysql_fetch_assoc($result)){
>  $node = $dom->createElement("marker");
>  $newnode = $parnode->appendChild($node);
>  $newnode->setAttribute("name", $row['name']);
>  $newnode->setAttribute("address", $row['address']);
>  $newnode->setAttribute("message", $row['message']);
>  $newnode->setAttribute("lat", $row['lat']);
>  $newnode->setAttribute("lng", $row['lng']);
>  $newnode->setAttribute("distance", $row['distance']);
>
>
> }
>
> echo $dom->saveXML();
> ?>
>
> I apologise for the code but I want you to have everything incase you
> can tell me where to put this file to auto geocode the address so it
> will show up on the map with a marker and the info. Thank you so much
> in advance for your help.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Maps API V2" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/google-maps-api?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google Maps API V2" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-maps-api?hl=en.

Reply via email to