Welcome, Guest
Username: Password: Remember me

TOPIC: Question avec Géolocalisation

Question avec Géolocalisation 1 year 1 month ago #100398

  • rodparis
  • rodparis's Avatar
  • OFFLINE
  • Senior Lime
  • Posts: 42
  • Karma: 2
Bonjour à tous,

Je souhaiterais pouvoir faire en sorte qu'une personne répondant à la question : Dans quel magasin vous trouvez-vous ?" puisse être pré-remplie en fonction de la géolocalisation GPS de son smartphone.

Est-ce possible ? Si oui : Comment faire svp ?

Bien à tous
The administrator has disabled public write access.

Question avec Géolocalisation 1 year 1 month ago #100399

  • Nickko
  • Nickko's Avatar
  • NOW ONLINE
  • LimeSurvey Team
  • Posts: 2161
  • Thank you received: 275
  • Karma: 58
Là je pense que c'est assez spécifique, il faudrait 1. un JS qui récupère la position GPS via l'API idoine, ensuite, il faudrait passer ces informations dans un champs de formulaire, ça c'est possible.

Par contre pour le magazin... Il faudrait connaitre la position de chaque magasin, comparer la position actuelle à celle de chaque magasin pour trouver la bonne, tout ça c'est possible en JS mais c'est du gros boulot.

Tu es sur que l'utilisateur à besoin de cette info ?
Sinon, tu pourrais tout simplement récupérer la position GPS et déduire de quel magasin il s'agit en post-traitement.
Nickko
Ergonome / Usability expert
The administrator has disabled public write access.

Question avec Géolocalisation 1 year 1 month ago #100401

  • rodparis
  • rodparis's Avatar
  • OFFLINE
  • Senior Lime
  • Posts: 42
  • Karma: 2
Salut Nickko,

Tes 2 pistes sont top ! Comment tu récups la position GPS en JS dans une question sous LM ? Car un HTML5 je sais faire mais en JS ... c'est un poil plus chaud.

Si je continu dans la réflexion, la 3ème piste serait de mettre une page (en php par exemple) en amont du questionnaire qui récupère la position GPS, qui se faire une requête en base, ramener la ville ou le magasin, et passer le résultat dans une variable URL pour accéder au questionnaire.

C'est tordu mais cela peut fonctionner non ?

Par contre, faut que je cherche les bons outils du coup !
The administrator has disabled public write access.

Question avec Géolocalisation 1 year 1 month ago #100402

  • Nickko
  • Nickko's Avatar
  • NOW ONLINE
  • LimeSurvey Team
  • Posts: 2161
  • Thank you received: 275
  • Karma: 58
Ta 3ème solution semble plus simple et plus propre que ce que j'ai imaginé.
En HTML5 sans JS, c'est un nouveau contrôle de formulaire ? Tu pourrais me montrer comment tu fais ça voir juste un lien pour mon édification personnelle ?

Nickko
Nickko
Ergonome / Usability expert
The administrator has disabled public write access.

Question avec Géolocalisation 1 year 1 month ago #100410

  • rodparis
  • rodparis's Avatar
  • OFFLINE
  • Senior Lime
  • Posts: 42
  • Karma: 2
Je me suis un peu mal exprimé en fait.
J'utilise bien du JS dans une Page PHP mais j'exploite le HTML5 pour éviter d'avoir des merdes à l'affichage : www.html5-css3.fr/html5/tutoriel-geolocalisation-html5
Un fois la lat et long récup, j'utilise des bases de chez geonames.org et j'attaque le tout dans une base mysql avec des fonctions stockées pour déterminer l'enreg le plus proche de la position détectée.
The administrator has disabled public write access.

Question avec Géolocalisation 1 year 1 month ago #100431

  • DenisChenu
  • DenisChenu's Avatar
  • OFFLINE
  • Moderator Lime
  • Posts: 6551
  • Thank you received: 869
  • Karma: 257
Salut,

Je commencerais à créer une question texte, et à placer la localisation GPS dessus, ensuite se servir d'un KML et de faire la recherche avec l'API geonames (il me semble que c'est possible).

Par contre : besoin de créer son script externe ... et de tout faire "manuellement".

On peux prévoir des tests et retour ici si tu le souhaite .

Autre chose : si tu connais bien geonames: on à le projet, pour la 2.1, d'avoir des nouveaux types de questions. Un type de question : geolocalisation + choix des points les plus proches d'un KML serait une idée intéressante (et virer cette b... de google).

Denis
The administrator has disabled public write access.

Question avec Géolocalisation 1 year 1 month ago #100476

  • rodparis
  • rodparis's Avatar
  • OFFLINE
  • Senior Lime
  • Posts: 42
  • Karma: 2
Yep bonne idée !
Le seul soucis des API de GEONAMES c'est que je ne sais pas si on peut utiliser sa propre KML et si se sera gratos advitam !

Je pense que le plus simple serait d'implémenter dans LS, des questions de types geoloc et de faire en sorte que le getcurrentposion soit implémenter lorsque ce type de question s'affiche. Ensuite, dans les choix de réponses, on insert un tableau avec les données que l'on souhaite (nom, latitude, longitude, elevation, distance).
Le choix de réponse sera ensuite en fonction de du getcurrentposition, et de la distance max paramétrée pour cette question.

La requête en base est assez simple ($long $lat $distance sont les variables):
SELECT réponse, ( 6371 * ACOS( COS( RADIANS(" . $long . ") ) * COS( RADIANS( latitude ) ) * COS( RADIANS( longitude ) - RADIANS(" . $lat . ") ) + SIN( RADIANS(" . $long . ") ) * SIN( RADIANS( latitude ) ) ) ) AS distance FROM `geoloc_fr` HAVING distance < " . $distance . " ORDER BY distance"
nota : la métrique de la distance ($distance que je met en général à 2) est ici en kilomètres (cf le coef 6371)

Utiliser une API externe pour LS me parait risqué en raison du modèle économique qui peut évolué à la manière de gmap.
The administrator has disabled public write access.
Moderators: Nickko
Time to create page: 0.117 seconds
Donation Image