PHP : Βοήθεια με Google Maps

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
alot
Δημοσιεύσεις: 6
Εγγραφή: 25 Ιούλ 2012 05:16

PHP : Βοήθεια με Google Maps

Δημοσίευση από alot » 25 Ιούλ 2012 05:37

Γειά σας, είμαι σχετικά καινούργιος με την PHP και θέλω να κάνω το εξής :
Έχω έναν πίνακα στη Βάση Δεδομένων (Localhost προς το παρον) και έχω ήδη υπολογισμένες τις συντεταγμένες από κάθε διεύθυνση που περιλαμβάνεται σε αυτή τη Βάση. Έχω φτιάξει ένα query το οποίο εμφανίζει τις όλες τις διευθύνσεις. Ο κώδικας έχει ως εξής :
<?php
$result = mysql_query("SELECT * FROM geoid", $connection);
if (!$result) {
die("Database query failed: " . mysql_error());

}
while ($row = mysql_fetch_array($result)) {
echo $row["NAME"] ."&nbsp" .$row["ADDRESS"] ."<br />";
if ($row["LONGTITUDE"]!=0){

$map = "http://maps.google.com/?q=".$row["LONGTITUDE"].",".$row["LATIDUDE"];
echo $map."<br />";}
}
?>
Στο $map προσπάθησα να φτιάξω μία διεύθυνση για το Google Maps για κάθε εγγραφή.
Αυτό που θα ήθελα να κάνω είναι μετά από κάθε εγγραφή του πίνακα να μου εμφανίζει και έναν χάρτη (Google maps) με αυτή τη διεύθυνση.
Οποιαδήποτε βοήθεια θα ήταν πολύτιμη. Ευχαριστώ εκ των προτέρων.

Άβαταρ μέλους
nirvana
Δημοσιεύσεις: 241
Εγγραφή: 01 Σεπ 2005 18:28
Τοποθεσία: Αγ. Παρασκευή

PHP : Βοήθεια με Google Maps

Δημοσίευση από nirvana » 25 Ιούλ 2012 15:08

Για να έχεις ένα χαρτ:

Κώδικας: Επιλογή όλων

https&#58;//google-developers.appspot.com/maps/documentation/javascript/examples/map-simple
view source

Κώδικας: Επιλογή όλων

<!DOCTYPE html>
<html>
  <head>
    <title>Google Maps JavaScript API v3 Example&#58; Map Simple</title>
    <meta name="viewport"
        content="width=device-width, initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <style>
      html, body, #map_canvas &#123;
        margin&#58; 0;
        padding&#58; 0;
        height&#58; 100%;
      &#125;
    </style>
    <script src="https&#58;//maps.googleapis.com/maps/api/js?sensor=false"></script>
    <script>
      var map;
      function initialize&#40;&#41; &#123;
        var mapOptions = &#123;
          zoom&#58; 8,
          center&#58; new google.maps.LatLng&#40;-34.397, 150.644&#41;,
          mapTypeId&#58; google.maps.MapTypeId.ROADMAP
        &#125;;
        map = new google.maps.Map&#40;document.getElementById&#40;'map_canvas'&#41;,
            mapOptions&#41;;
      &#125;

      google.maps.event.addDomListener&#40;window, 'load', initialize&#41;;
    </script>
  </head>
  <body>
    <div id="map_canvas"></div>
  </body>
</html>
Αν και δεν το έχω κάνει ποτε φαντάζομαι με ένα loop για τα παραπάνω σημεία δεν θα είναι δυσκολο..

alot
Δημοσιεύσεις: 6
Εγγραφή: 25 Ιούλ 2012 05:16

PHP : Βοήθεια με Google Maps

Δημοσίευση από alot » 25 Ιούλ 2012 19:01

nirvana σε ευχαριστώ για την απάντηση. αυτό που δεν μπορώ όμως να καταφέρω είναι να βάλω τον κώδικα μέσα στο php query για να μπορέσω κάθε φορά να φορτώνω ένα χάρτη με συγκεκριμένα longtitude, latidude (για κάθε εγγραφή δηλαδή).

Άβαταρ μέλους
nirvana
Δημοσιεύσεις: 241
Εγγραφή: 01 Σεπ 2005 18:28
Τοποθεσία: Αγ. Παρασκευή

PHP : Βοήθεια με Google Maps

Δημοσίευση από nirvana » 25 Ιούλ 2012 22:43

Δεν μπορώ να πω ότι είμαι ειδικός στην javascript οπότε δεν ξερω αν είναι ο τέλειος τρόπος. Πάντως αυτό δουλεύει:

Φτιάξε από τις συντεταγμένες στην βάση σου ένα array όπως έχω εγώ το results

Κώδικας: Επιλογή όλων

<?
$results =array&#40;
	array&#40;'lat' => 52.315195, 'log' => 14.150391&#41;,
	array&#40;'lat' => 37.961523, 'log' => 24.109497&#41;,
	array&#40;'lat' => 11.092166, 'log' => 108.457031&#41;
&#41;;
?>

<!DOCTYPE html> 
<html> 
  <head> 
    <title>Google Maps JavaScript API v3 Example&#58; Map Simple</title> 
    <meta name="viewport" 
        content="width=device-width, initial-scale=1.0, user-scalable=no"> 
    <meta charset="utf-8"> 
    <style> 
      .map_canvas &#123;  
        height&#58; 150px;
		width&#58; 80% ;
		margin-bottom&#58; 20px;
      &#125; 
    </style> 
    <script src="https&#58;//maps.googleapis.com/maps/api/js?sensor=false"></script> 
    <script> 
		var count = <?=count&#40;$results&#41;?>;
		var myPlaces = <?= json_encode&#40;$results&#41;; ?>;
		
		function initialize&#40;&#41; &#123; 
			for &#40;i=0; i<count; i++&#41;
			&#123;
				map = new google.maps.Map&#40;document.getElementById&#40;'map_'+&#40;i+1&#41;&#41;, 
				&#123; 
					zoom&#58; 8, 
					center&#58; new google.maps.LatLng&#40;myPlaces&#91;i&#93;.lat, myPlaces&#91;i&#93;.log&#41;, 
					mapTypeId&#58; google.maps.MapTypeId.ROADMAP 
				&#125;&#41;; 
			&#125;
		&#125; 

      google.maps.event.addDomListener&#40;window, 'load', initialize&#41;; 
    </script> 
  </head> 
  <body>

	<? for &#40;$i = 1; $i <= count&#40;$results&#41;; $i++&#41; &#123; ?>
    	<div class="map_canvas" id="map_<?= $i ?>"></div> 
	<? &#125; ?>
  </body> 
</html> 
Ελπίζω να βοήθησα :pint:

alot
Δημοσιεύσεις: 6
Εγγραφή: 25 Ιούλ 2012 05:16

PHP : Βοήθεια με Google Maps

Δημοσίευση από alot » 27 Ιούλ 2012 15:53

Φίλε Nirvana σε ευχαριστώ πολύ για τον κώδικα που μου έδωσες :P. Τελικά το έφτιαξα βάζοντας HTML μέσα στο Loop. Επειδή είμαι καινούργιος σε PHP δεν ήξερα ότι μπορεί κάποιος να το κάνει αυτό κλείνοντας και ανοίγοντας το PHP tag! :oops: Αν δεν μου είχες δώσει τον παραπάνω κώδικα δεν θα το είχα προσέξει. Ο κώδικας που έχω έχει ως εξής :

<?php
$result = mysql_query("SELECT * FROM geoid ", $connection);
if (!$result) {
die("Database query failed: " . mysql_error());

while ($row = mysql_fetch_array($result)) {
$city= $row["CITY"];
$address= $row["ADDRESS"];
$tk= $row["TK"];
echo $row["NAME"].", ".$row["ADDRESS"].",".$row["CITY"].",".$row["TK"]."<br />";
$city= $row["CITY"];
$address= $row["ADDRESS"];
$tk= $row["TK"];
}
?>
<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.gr/maps?f=q&amp;sou ... mp;q=<?php echo "$address,+$city,+$tk";?>&amp;aq=t&amp;sspn=0.008341,0.01929&amp;ie=UTF8&amp;hq=&amp;hnear=<?php echo "$address,+$city,+$tk";?>&amp;spn=0.00417,0.009645&amp;t=m&amp;z=17&amp;output=embed"></iframe><br />
<?php } ?>

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

PHP : Βοήθεια με Google Maps

Δημοσίευση από korgr » 27 Ιούλ 2012 18:44

Αν θες να τι κάνεις πιο σωστό, να αποθηκεύεις στη βάση lat, lng & zoom και να δημιουργείς τον χάρτη με js και όχι τραβώντας τον μέσα σε iframe.
Έτσι θα μπορείς να βάζεις και σημεία ενδιαφέροντος, να αντιστοιχείς φωτογραφίες και πληροφορίες από τη βάση σου σε ένα map point και πολλά άλλα καλούδια...

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης