Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Wolontariat]Konwerter współrzędnych - skrypt
Forum PHP.pl > Inne > Giełda ofert > Poszukuję
riseacknot
Witam
Jestem zielony w sprawach PHP. Potrzebuję skryptu, który konwertuje współrzędne ze stopni na stopnie i minuty oraz ze stopni i minut na same stopnie. Z góry dzięki
riseacknot
A mógłby ktoś to wytłumaczyć bo niestety nie rozumiem sad.gif
_Borys_
Masz gotowe funkcje które musisz wywołać np poprzez
  1. echo DMStoDEC(22,12,42).' &deg<br />';// Współrzędne na stopnie
  2. $wspolrzedne = DECtoDMS(26.72773551940918);
  3. echo $wspolrzedne['deg'].'&deg'.$wspolrzedne['min'].'\''.$wspolrzedne['sec'].'"';//Stopnie na współrzędne

w nawiasach podajesz swoje dane lub poprzez formularz w html-u, podajesz dane a skrypt php konwertuje.

Inny przykład:
Convert coordinates from decimal to degrees and vice versa
riseacknot
Mam jeszcze małą prośbę, ponieważ muszę właśnie zrobić taką stronę która konwertuje współrzędne, ale za bardzo mi to nie wychodzi ;/

  1. <?php header('Content-Type: text/html; charset=utf-8'); ?>
  2. <html>
  3. <body>
  4. </span></a>
  5. </h1><h2>
  6. Wprowadź współrzędne:
  7. <br>
  8. <form action="dwa.php" method="GET">
  9. <echo>Stopnie:</echo>
  10. </option></select><input id="$deg" type="text" size="5" name="$deg"></input><label for="$deg">
  11. °
  12. <echo>Minuty:</echo>
  13. </label><input id="$min" type="text" size="5" name="$min"></input><label for="$min">
  14. '
  15. </label>
  16.  
  17. <script> {
  18. return $deg+((($min*60)+($sec))/3600);
  19. }
  20.  
  21. function DECtoDMS($dec)
  22. {
  23.  
  24. $vars = explode(".",$dec);
  25. $deg = $vars[0];
  26. $tempma = "0.".$vars[1];
  27.  
  28. $tempma = $tempma * 3600;
  29. $min = floor($tempma / 60);
  30. $sec = $tempma - ($min*60);
  31.  
  32. return array("deg"=>$deg,"min"=>$min,"sec"=>$sec);
  33. }
  34. </script>
  35.  
  36. </form>
  37. </label></div><div class="form-row"><input type="hidden" value="dm" name="system"></input><input class="button" type="submit" value="Przelicz"></input></div></form></div><div class="adsense-box"><script type="text/javascript">
  38.  
  39. }</body></html>


To właśnie jest moja pierwsza strona i nie wiem czy jest wszystko dobrze oraz nie umiem zrobić by po nasiśnięciu przycisku prznosiło na drugą stronę:
  1. <?php header('Content-Type: text/html; charset=utf-8'); ?>
  2. <html>
  3. </span></a></h1><h2>
  4. Wprowadzone współrzędne:
  5. </span></div><div class="result-box"><span class="system">
  6. DM (stopnie, minuty)
  7. </span><br></br><span class="result">
  8.  
  9. <?php echo $_GET['$deg+$min']?><br>
  10.  
  11. <br></br>
  12.  
  13. </span></div><div class="result-box"><span class="system">
  14. D (stopnie)
  15. </span><br></br><span class="result">
  16.  
  17. °
  18.  
  19. </html>


Tu też nie wiem co mam jeszcze dopisać. Jeśli byłbyś skłonny mi pomóc byłbym bardzo wdzięczny smile.gif
_Borys_
Coś w tym stylu
plik ws1.php
  1. <?php
  2. include 'ws2.php';
  3. ?>
  4.  
  5. <html>
  6. <head>
  7. <meta http-equiv="content-type" content="text/html" charset="utf-8"/>
  8. <style type="text/css">
  9. <!--
  10. #glowny{
  11. width: 500px;
  12. margin: 0 auto;
  13. padding-left: 20px;
  14. border: 1px solid black;
  15. -webkit-box-shadow: 7px 7px 5px rgba(50, 50, 50, 0.75);
  16. -moz-box-shadow: 7px 7px 5px rgba(50, 50, 50, 0.75);
  17. box-shadow: 7px 7px 5px rgba(50, 50, 50, 0.75);
  18. }
  19. .sub{
  20. margin-left: 80px;
  21. }
  22. .wynik{
  23. padding-top: 30px;
  24. text-align: center;
  25. }
  26. -->
  27. </style>
  28. </head>
  29. <body>
  30. <div id = "glowny">
  31. <h1> Wprowadź współrzędne:</h1>
  32. <form action="ws1.php" method="post">
  33. <h2>Stopnie:</h2>
  34. <form action="dwa.php" method="post">
  35. <input type="text" name = "deg" size="5"/> &deg;
  36. <h2>Minuty:</h2>
  37. <input type="text" name = "min" size="5"/> '
  38. <h2>Sekundy:</h2>
  39. <input type="text" name = "sec" size="5"/> "
  40. <input type="submit" class="sub" value="Przelicz"/>
  41. </form>
  42. </div>
  43. <?php
  44.  
  45. // sprawdzanie czy wszystkie dane wpisane
  46. if (!empty($_POST['deg']) && !empty($_POST['min']) && !empty($_POST['sec']))
  47. {
  48. // przypisanie wpisanych danych do zmiennych i rzutowanie na int
  49. $deg = (int)$_POST['deg'];
  50. $min = (int)$_POST['min'];
  51. $sec = (int)$_POST['sec'];
  52.  
  53. ?>
  54. <h2 class="wynik">
  55. <?php
  56.  
  57. // wywolanie funkcji przeliczającej oraz wyświetlenie wyniku
  58. echo dmsToDec($deg, $min, $sec) . ' &deg;';
  59. }
  60.  
  61. ?>
  62. </h2>
  63. </body>
  64. </html>

plik ws2.php zawiera funkcje z drugiego linku który podałem.
Teraz twoja kolej, spróbuj napisać aby przeliczało w drugą stronę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.