1

たとえば、緯度と経度を含むMySQLデータベースがありますが、これらの座標を呼び出してマップに表示するにはどうすればよいですか?誰かが私を助けてくれますか?

4

1 に答える 1

2

あなたの質問と情報は少し不明確なので、これらは私の仮定です:

  1. EGMap拡張機能をyiiアプリケーションにインストールするための指示に正しく従っていたと思います。
  2. 上記の座標(緯度と経度)にマーカーを配置します。

サンプルコード:(「//テーブルの場所からLatLongを取得」とコメントされた行のデータベーステーブルと列に合うように調整してください)。これをビューファイルの例に直接配置します:protected / views / site / index.php

<!-- other html codes here -->
<div id="map-container">
<?php
// Get LatLong from table Location
$location=Location::model()->findByPk(1);
$latitude = $location->latitude;
$longitude = $location->longitude;

Yii::import('ext.gmap.*');

$gMap = new EGMap();
$gMap->setJsName('map');
$gMap->zoom = 10;
$mapTypeControlOptions = array(
    'sensor'=>true,
    'position'=> EGMapControlPosition::LEFT_BOTTOM,
    'style'=>EGMap::MAPTYPECONTROL_STYLE_DROPDOWN_MENU
);
// Map settings
$gMap->mapTypeControlOptions= $mapTypeControlOptions;
$gMap->setWidth(800);
$gMap->setHeight(600);
$gMap->setCenter($latitude, $longitude);

// Prepare icon
$icon = new EGMapMarkerImage("http://google-maps-icons.googlecode.com/files/gazstation.png");
$icon->setSize(32, 37);
$icon->setAnchor(16, 16.5);
$icon->setOrigin(0, 0);
// Prepare marker
$marker = new EGMapMarker($latitude, $longitude, array('title' => 'Gas Station','icon'=>$icon));
$gMap->addMarker($marker);

$gMap->renderMap();
?>
</div>
<!-- other html codes here -->
于 2012-05-18T05:11:16.570 に答える