<?php
$DBaddress = "大阪市北区芝田" ;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt …
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Google Maps JavaScript API Example</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQ …
type="text/javascript" charset="utf-8"></script>
</head>
<body onload="initAddress()">
<div id="map" style="width:450px; height:400px"></div>
<script type="text/javascript">
//<![CDATA[
var map = new GMap2(document.getElementById("map"));
var geocoder = new GClientGeocoder();
function showAddress(address) {
geocoder.getLatLng( address, showTheLatLng );
}
function showTheLatLng (latlng) {
var address = document.getElementById("address").value; // 入力欄のidはaddress
if (!latlng) {
alert("ご指定の住所(" + address + ")はジオコーディングできませんでした。");
}
else {
map.setCenter(latlng, 13);
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
var marker = new GMarker(latlng);
map.addOverlay(marker);
marker.openInfoWindowHtml(address);
}
}
//]]>
</script>
</body>
</html>
としてDBから値を受け取って初期の地図を表示したいです。
どのようにしたら良いでしょうか?
No.2ベストアンサー
- 回答日時:
#1です、ちょっと修正しました。
bodyのonloadでinit() とshowAddress("初期アドレス"); を呼んでいます。また、初期のセンター位置は削除しています。///////////////
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt …
<html xmlns="?http://www.w3.org/1999/xhtml">
<head>
<title>Google Maps JavaScript API Example - simple</title>
<script src="http://maps.google.com/maps?file=api&v=2.x&key=A … type="text/javascript" charset="UTF-8"></script>
</head>
<body onload="load();showAddress('<?=$DBaddress?>')">
<div id="map" style="width:450px; height:400px"></div>
<script type="text/javascript">
//<![CDATA[
var map = null;
var geocoder = null;
// 初期化
// <body onload="load()"> で呼び出されています
function load() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
// GClientGeocoderを初期化
geocoder = new GClientGeocoder();
}
}
// DBからのデータを入れます
function showAddress(address) {
if (geocoder) {
geocoder.getLatLng(
address,
function(point) {
if (!point) {
alert(address + " not found");
} else {
map.setCenter(point, 13);
var marker = new GMarker(point);
map.addOverlay(marker);
marker.openInfoWindowHtml(address);
}
}
);
}
}
//ここでshowAddress()にDBからのデータを入力します
//]]>
</script>
<div id="map" style="width:500px; height:600px"></div>
</body>
</html>
/////////////////////
前のはちゃんと検証していなかったのでうまく動かなかったかもしれません。失礼しました。
有難うございます。
うまくいきました。
Javascriptが苦手で・・・。
試行錯誤で時間を浪費してしまいました。
本当に丁寧に教えていただき感謝しています。
No.1
- 回答日時:
先ほどのものです。
混乱していますね。下記ソースで試してみて下さい。
$DBaddress = "DBから取得したアドレス";
$aipKey = "Google Maps APIのキー";
とした場合、
/////////////// test.php /////////////////////////
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt …
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Google Maps JavaScript API Example - simple</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=<?= …
type="text/javascript" charset="utf-8"></script>
</head>
<body onload="load()">
<div id="map" style="width:450px; height:400px"></div>
<script type="text/javascript">
//<![CDATA[
var map = null;
var geocoder = null;
// 初期化
// <body onload="load()"> で呼び出されています
function load() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(35.67431, 139.69082), 13);
// GClientGeocoderを初期化
geocoder = new GClientGeocoder();
}
}
// DBからのデータを入れます
function showAddress(address) {
if (geocoder) {
geocoder.getLatLng(
address,
function(point) {
if (!point) {
alert(address + " not found");
} else {
map.setCenter(point, 13);
var marker = new GMarker(point);
map.addOverlay(marker);
marker.openInfoWindowHtml(address);
}
}
);
}
}
//ここでshowAddress()にDBからのデータを入力します
showAddress('<?=$DBaddress?>');
//]]>
</script>
<div id="map" style="width:500px; height:600px"></div>
</body>
</html>
///////////////////////////////////////
以上、
http://www.geekpage.jp/web/google-maps-api/geoco …
を改変
改変した部分は、フォームの部分を削除し、その代わりにshowAddress()へDBからの住所($DBaccess)を入れた事です。
参考まで。
この回答への補足
ありがとうございます。
こちらの意図としてはブラウザの起動と同時にDBから住所情報を取り出して表示をさせたいです。
このソースだと渋谷の情報が初期表示されてしまします。
// 初期化
// <body onload="load()"> で呼び出されています
function load() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(35.67431, 139.69082), 13);
// GClientGeocoderを初期化
geocoder = new GClientGeocoder();
}
}
をどのようにしたら良いのか・・・と困っています。
よろしくお願いいたします
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript WordPressのコンタクトフォーム7にて送信者の位置情報を送らせたい 2 2022/09/14 23:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SCRIPT5007: 未定義または NULL...
-
リンク移動先のURLを取得
-
出荷予定日を表示するJavaスク...
-
JavaScriptでiframeの内容を「...
-
二つの関数を一つにまとめるこ...
-
JavaScript でキーを送る
-
ウィンドウのタイトルを変えたい
-
「オブジェクトを指定してくだ...
-
ボタンのID名を取得するには?
-
キーを押している間の時間を計...
-
getElementsByNameで要素が取得...
-
フレームサイズの変更について
-
乱数を一定時間毎に表示させた...
-
Javascriptの出力結果をhtmlボ...
-
return falseが効かない(F5キ...
-
function の return 値を表示し...
-
innnerHTMLがうまくいきません
-
<a href="#" …>の意味を教えて...
-
bodyにidをつける理由は何ですか?
-
base64encodeでの文字化けについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
getElementsByNameで要素が取得...
-
SCRIPT5007: 未定義または NULL...
-
初心者javascript ウィンドウサ...
-
function の return 値を表示し...
-
JavaScriptでiframeの内容を「...
-
JavaScript でキーを送る
-
フォーカス移動抑止について
-
iframeの中から親ページをスム...
-
html javascript 作った配列を...
-
ボタンのID名を取得するには?
-
キーを押している間の時間を計...
-
自動ジャンプでフォームデータ...
-
bodyタグのfocus
-
リンク移動先のURLを取得
-
チェックボックスの選択パター...
-
JavaScriptでの西暦下2桁での表...
-
htaでVBSのソースを書いたらエ...
-
乱数を一定時間毎に表示させた...
-
「オブジェクトを指定してくだ...
-
jQuery ツールチップの中のリンク
おすすめ情報