下記のコードをどのように書き換えれば、同一ページに複数のgoogle mapを表示させることが可能でしょうか?
tableの大部分はホットペーパーapiから取得したものです。地図が一件しか表示されません。
エラーメッセージを見ると、
Google Maps API warning: SensorNotRequired https://developers.google.com/maps/documentation/javascript/error-messages#sensor-not-required
と表示されます。
マーカーの部分が原因かなと思い、
javascript
1 for (i = 0; i < data.length; i++) {
を追加したりしましたがダメでした。
また、
getElementById
を
getElementByClass
に変更しても(つまりidからclass)ダメでした。
php
1<?php 2$key='my key'; 3$count='10'; 4$large_area='Z014'; 5$start =1; 6$format='xml'; 7$url='http://webservice.recruit.co.jp/hotpepper/gourmet/v1/?key='.$key.'&count='.$count.'&large_area='.$large_area.'&start='.$start.'&format='.$format; 8$xml=simplexml_load_file($url); 9$total_count=$xml->results_available; 10if(!$xml->shop){ 11 echo 'We can not find!!'; 12 } else { 13?> 14<?php foreach($xml->shop as $rest){ 15?> 16 <!DOCTYPE html> 17 <html> 18 19<body> 20<table border="1"> 21 <tr> 22 <td> 23 $rest->name; 24 </td> 25 </tr> 26 <tr> 27 <td> 28 $rest->lng 29 $r->lat 30 </td> 31 </tr> 32 <tr> 33 <td> 34 $rest->address 35 </td> 36 </tr> 37<tr> 38 <td> 39 <div id="gmap" style="width: 500px; height: 370px; border: 1px solid Gray;"> 40 </div> 41 </td> 42 </tr> </table> 43 44 45 ?> 46<?php 47 48 49 } } ?> 50 51 52 <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 53 <script type="text/javascript" src="http://maps.google.com/maps/api/js?key=my key&sensor=false"></script> 54 <script type="text/javascript"> 55 google.maps.event.addDomListener(window, 'load', function() 56 { 57 var lat =35.60472; 58 var lng =140.12333 ; 59 60 61 var latlng = new google.maps.LatLng(lat, lng); 62 var mapOptions = { 63 zoom: 12, 64 center: latlng, 65 mapTypeId: google.maps.MapTypeId.ROADMAP, 66 scaleControl: true 67 }; 68 var mapObj = new google.maps.Map(document.getElementById('gmap'), mapOptions); 69 70 var marker = new google.maps.Marker({ 71 position: {lat:<?= $rest->lat; ?>, lng: <?= $rest->lng; ?>}, 72 map: mapObj 73 }); 74 }); 75 </script> 76</body> 77</html>
回答1件
あなたの回答
tips
プレビュー