<?php // Please leave the link below with the source code, thank you. // http://www.websmithing.com/portal/Programming/tabid/55/articleType/ArticleView/articleId/6/Google-Map-GPS-Cell-Phone-Tracker-Version-2.aspx include 'dbconnect2.php'; // you need to replace this with your own key from Google $key = 'ABQIAAAAQ35Hu3xqOoeD50UMgBW0cBQEt3eA6mol2Np5q6SAKw0EDVXpM9hRExX__LZW3RbLXHuLKZlwC0oypOw'; $url = 'http://maps.google.com/staticmap'; // this is from the queryString that was sent by the phone $height = $_GET['h']; $width = $_GET['w']; $lat = $_GET['lat']; $lng = $_GET['lng']; $zoom = $_GET['zm']; $mph = $_GET['mph']; $direction = $_GET['dir']; $distance = $_GET['dis']; $date = urldecode($_GET['dt']); $locationMethod = urldecode($_GET['lm']); $date = getDateFromJavaDate($date); $phoneNumber = $_GET['pn']; $sessionID = $_GET['sid']; $accuracy = $_GET['acc']; $locationIsValid = $_GET['iv']; $extraInfo = $_GET['info']; // save the gps location to the database $query = 'CALL prcSaveGPSLocation2(\'' . $lat . '\',\'' . $lng . '\',\'' . $mph . '\',\'' . $direction . '\',\'' . $distance . '\',\'' . getDateFromJavaDate($date) . '\',\'' . $locationMethod . '\',\'' . $phoneNumber . '\',\'' . $sessionID . '\',\'' . $accuracy . '\',\'' . $locationIsValid . '\',\'' . $extraInfo . '\')'; if (!$mysqli->multi_query($query)) { die('$mysqli->multi_query: ' . $mysqli->error); } $mysqli->close(); // build the Google map url $mapUrl = $url . '?markers=' . $lat . ',' . $lng . ',blueu&zoom=' . $zoom . '&size=' . $width . 'x' . $height . '&maptype=mobile&key=' . $key; // get the map image $map = imageCreateFromGIF($mapUrl); // send the map put as a png, java me is required to handle png images header('Content-type: image/png'); imagePNG($map); imageDestroy($map); function getDateFromJavaDate($theDate) { // need to convert from this: Fri May 19 21:03:48 GMT-08:00 2007 // to this: 2008-04-17 12:07:02, MySQL DATETIME $months = array("1"=>"Jan", "2"=>"Feb", "3"=>"Mar", "4"=>"Apr", "5"=>"May", "6"=>"Jun", "7"=>"Jul" ,"8"=>"Aug", "9"=>"Sep", "10"=>"Oct", "11"=>"Nov", "12"=>"Dec"); $hour = substr($theDate, 11, 2); $minute = substr($theDate, 14, 2); $day = substr($theDate, 8, 2); $month = substr($theDate, 4, 3); $year = substr($theDate, strlen($theDate) - 4, 4); $format = '%Y-%m-%d %I:%M:%S'; return strftime($format, mktime($hour, $minute, 0, array_search($month, $months), $day, $year)); } ?>