PHPでGoogle Maps APIを利用したい

前回、PHPでJavaScriptプログラムを実行することを試した。元々したかったのは、PHPで取得した位置情報をGoogle Mapにマークすることで、PHPで完結できたらいいなぁと思って調べてたら、php-google-map-apiというのがあるのを知り、試してみた。

php-google-map-apiのGoogleMap.php先頭に、キャッシュ用のデータベースを作成して(?)との記載があった。
ということで、データベースと、GoogleMap.phpに記載があった下記テーブルをつくった。

CREATE TABLE GEOCODES (
  address varchar(255) NOT NULL default '',
  lon float default NULL,
  lat float default NULL,
  PRIMARY KEY  (address)
);

php-google-map-apiのDemoコード

<?=hogehoge();?>

というのがあった。これはhogehoge()の結果を出力する意味なのね。

<?php echo 'xxx'; ?>

確認ページ:hello_php_google_map_api.php

<?php
include_once("./GoogleMap.php");
include_once("./JSMin.php");

$MAP_OBJECT = new GoogleMapAPI(); $MAP_OBJECT->_minify_js = isset($_REQUEST["min"])?FALSE:TRUE;
$MAP_OBJECT->setDSN("mysql://user:password@localhost/db_name");
$MAP_OBJECT->addMarkerByAddress("Denver, CO","Marker Title", "Marker Description");
$MAP_OBJECT->setMapType('map');
$MAP_OBJECT->setWidth('500px');
$MAP_OBJECT->setHeight('500px');
$MAP_OBJECT->setZoomLevel(15);
?>
<html>
<head>
<?=$MAP_OBJECT->getHeaderJS();?>
<?=$MAP_OBJECT->getMapJS();?>
</head>
<body>
<h1>php-google-map-api sample</h1>
<?=$MAP_OBJECT->printOnLoad();?>
<?=$MAP_OBJECT->printMap();?>
<?=$MAP_OBJECT->printSidebar();?>
</body>
</html>

実行後にphpMyAdminで確認すると、ジオコーディングで取得した経度と緯度が、データベースに格納されていた。
Screen Shot 2012-02-24 at 15.49.09

参考リンク

関連エントリー

  1. 緯度・経度から住所を取得したい (Google Maps API)
  2. Google Maps API 続き
  3. Google Maps API
  4. PHPでMySQLデータベースにデータを追加する/参照する
  5. PHPの学習
This entry was posted in 未分類 and tagged , , , , . Bookmark the permalink.