PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 11-03-2018 17:36:30

filiplarlibe
Membre
Inscription : 23-03-2010
Messages : 6
Site Web

utiliser Géolocalisation HTML5 dans une page php

Bonsoir à tous,

Je développe actuellement un site web sous joomla. Et je voudrais modifier un module existant pour insérer la géolocalisation html5 via le navigateur en javascript. J'ai trouvé plusieurs tuto sur le net mais par contre je rencontre certaines difficultés :

Dans le module joomla, j'ai une page php : page1.php et le template du module dans le dossier template du module, une autre page page1.php dans lequel il y a le code HTML pour le visuel de la page.
Jusque là rien de spécial tout est normal

J'ai trouvé du code pour faire la géolocalisation HTML5 notamment :

<script type="text/javascript">
            if (navigator.geolocation)
              navigator.geolocation.getCurrentPosition(successCallback, errorCallback, {enableHighAccuracy:false});
            else
              alert("Votre navigateur ne prend pas en compte la géolocalisation HTML5");
           
            var lati;
            var longi;
            function successCallback(position){
              lati = position.coords.latitude;
              longi = position.coords.longitude;
              alert("Latitude : " + lati + ", longitude : " + longi);
            }; 
 
            function errorCallback(error){
                            var info = "Erreur lors de la géolocalisation : ";
    switch(error.code) {
    case error.TIMEOUT:
      info += "Timeout !";
    break;
    case error.PERMISSION_DENIED:
  info += "Vous n’avez pas donné la permission";
    break;
    case error.POSITION_UNAVAILABLE:
      info += "La position n’a pu être déterminée";
    break;
    case error.UNKNOWN_ERROR:
      info += "Erreur inconnue";
    break;             
  }
            };

Dans la page1.php, en dessous du code javascript, j'ai actuellement 2 variables php nommés $latitude et $longitude qui servent dans le module pour faire des calculs (notamment des calculs de prières). Aujourd'hui ces 2 variables sont alimentés par l'administration du module. (on définit la latitude et la longitude directement dans le paramètrage du module).

Je voudrais donc trouver un moyen pour que alimenter ces variables $latitude et $longitude avec le résultat du javascript exécuté pour trouver la géolocalisation. J'ai bien compris le problème qui est que le javascript est exécuté côté client alors que le PHP est exécuté côté serveur. Mais j'ai vu qu'apparemment il serait possible d'utiliser de l'ajax pour renvoyer les variables au serveur. Par contre je ne sais pas du tout comment ça fonctionne, j'ai beau lire quelques tuto sur le net, je ne comprends pas tout et en plus ça n'a pas l'air de fonctionner. Et autre point, comme c'est un module joomla, il n'y a qu'une seule page page1.php.

Est-ce qu'il serait possible de renseigner ces variables php soit dans la même page (mais je ne pense pas que ce soit possible) ou soit par l'intermédiaire d'une autre page ? Si par une autre page, comment faire pour modifier le module joomla en ajoutant une autre page ?

Je vous remercie par avance pour votre. Soyez indulgent svp, je suis débutant en développement web, je ne connais pas trop le PHP, Javascript et l'AJAX.

Hors ligne

Pied de page des forums