Page 1 sur 1

Géocoder une adresse postale

Posté : 21 févr. 2011, 03:23
par orell1
Bonsoir,
je souhaiterai savoir si quelqu'un possède un script ou connait un script de géolocalisation (par adresse postale) facile à mettre en place (pour débutant)???
Il y a des adresse dans ma base de données, et une page php qui permet d'afficher ces adresses en fonction d'une recherche exécutée par un utilisateur...
En gros c'est une sorte d'annuaire, l'utilisateur cherche une entreprise, le résultat de la recherche s'affiche sous forme de fiche avec les coordonnées de l'entreprise, un peu comme les pages jaunes...
exemple : http://www.pagesjaunes.fr/trouverlespro ... 60F.yas09f

Quand on clique sur le lien plan :http://www.pagesjaunes.fr/trouverlespro ... portail=PJ

VOICI LE CODAGE DE L'AFFICHE DES COORDONNEES SUR MON SITE
<table border="0" align="left" cellspacing="0" cellpadding="0" width="100%">
 <?php

if ($dossier["logo"]) {
?>

<?php 
  }
  else {
?>

<tr>
  <td width="45%" rowspan="2">&nbsp;</td>
</tr>

<?php  }  ?>
<tr>
  <td width="55%"  ><h4 style="color:#1e297c">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b><u>Coordonn&eacute;es</b></u></h4>
    <ul>
    <?php
    	if ($aff_donnee_entreprise[telephone]) {
    ?>
    		<li><b>T&eacute;l&eacute;phone : </b><?php echo stripslashes($aff_donnee_entreprise[telephone]); ?></li>
    <?php
    	}
    	if ($aff_donnee_entreprise[fax]) {
    ?>
    		<li><b>Fax : </b><?php echo stripslashes($aff_donnee_entreprise[fax]); ?></li>
            
            <?php
    	}
    	if ($aff_donnee_entreprise[email]) {
    ?>
    		<li><b>E-mail : </b><?php echo stripslashes($aff_donnee_entreprise[email]); ?></li>
			
			<?php
    	}
    	if ($aff_donnee_entreprise[adresse]) {
   
   ?>
    		<li><b>Adresse : </b><?php echo stripslashes(mb_strtoupper($aff_donnee_entreprise[adresse])); ?></li>
			
			<?php
    	}
    	if ($aff_donnee_entreprise[adresse_bis]) {
    ?>
    		<li><b>Compl&eacute;ment adresse : </b><?php echo stripslashes(mb_strtoupper($aff_donnee_entreprise[adresse_bis])); ?></li>
			
			<?php
    	}
    	if ($aff_donnee_entreprise[code_postal]) {
    ?>
    		<li><b>Code postal : </b><?php echo stripslashes(mb_strtoupper($aff_donnee_entreprise[code_postal])); ?></li>
			
			<?php
    	}
    	if ($aff_donnee_entreprise[ville]) {
    ?>
    		<li><b>Ville : </b><?php echo stripslashes(mb_strtoupper($aff_donnee_entreprise[ville])); ?></li>
            
            <?php   }   ?>
    </ul>
  </td>
</tr>
</table>
Voila en gros ce que je souhaite faire c'est un script capable de lire l'adresse afficher sur la page ci-dessus afin d'y générer un plan, une carte ou un lien qui permet d'afficher le plan...

Merci par avance.

Cordialement.

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 10:53
par stealth35
tu peux faire ça avec l'API Google Maps

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 11:04
par orell1
Bonjour et merci pour ta réponse.
Oui j'avais vu cet API mais elle est complexe à mettre en place... je cherchais donc un système plus simple...

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 11:25
par stealth35
Bonjour et merci pour ta réponse.
Oui j'avais vu cet API mais elle est complexe à mettre en place... je cherchais donc un système plus simple...
complexe ??? t'as bien lu la doc ? il suffis juste lui passer l'adresse en paramètre...
en 2 lignes c'est fait

http://code.google.com/intl/fr/apis/map ... gResponses

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 12:05
par orell1
le truc c'est que ce n'est pas automatique... je dois mettre l'adresse manuellement...non?

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 12:20
par xTG
Tu ne trouveras aucune API qui aille automatiquement chercher et comprendre ta base de donnée pour y prendre les informations qui l'intéresse voyons... -_-
Faut savoir mettre un peu les mains dans le cambouis des fois (et même souvent en programmation).

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 12:27
par orell1
ah oui ça je suis entièrement d'accord. pour renseigner la base de données ok, je pensais qu'il fallait programmer une à une les adresse dans l'API...
c'est pour ça que j'ai eu peur.... :D

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 19:01
par zeus
Modération :
Le multipostage est interdit sur le forum.

Merci de prendre le temps de lire les règlements.

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 19:04
par orell1
c'est un bug.
Désolé pour l'erreur.

Cordialement.

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 19:52
par orell1
Bon vu que la programmation de l'API est assez rude j'ai rusé en faisant ceci...
<a href="http://maps.google.fr/maps?q=<?php echo stripslashes(strtolower($aff_donnee_entreprise[adresse])); ?>+<?php echo stripslashes(strtolower($aff_donnee_entreprise[code_postal])); ?>+<?php echo stripslashes(strtolower($aff_donnee_entreprise[ville])); ?> "  target="_blank">Afficher le Plan</a>
Et ça fonctionne...
ça vous parle ou vous trouvez ça complétement pourri ???

Merci

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 20:03
par stealth35
utilise http_build_query pour créer les paramètres et pourquoi faire stripslashes et strtolower ???

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 20:09
par orell1
http_build_query ... ? Que m'apporte de plus cette fonction?

j'utilise stripslashes et strtolower pour la lecture de ma base de données pour éviter les erreurs de lecture...

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 22:02
par stealth35
http_build_query ... ? Que m'apporte de plus cette fonction?

j'utilise stripslashes et strtolower pour la lecture de ma base de données pour éviter les erreurs de lecture...
http_build_query c'est la fonction qu'il faut utilisé pour faire une requete GET de plus elle encode des chaines dans le bon format HTTP
normalement tu n'as pas a faire stripslashes et strtolower

il faut aussi bien ecire ton code :

c'est pas :
$aff_donnee_entreprise[adresse]

mais :
$aff_donnee_entreprise['adresse']

:wink:

je pense que beaucoup de tes sources pour débutant sont obsolètes

Re: Géocoder une adresse postale

Posté : 21 févr. 2011, 22:12
par orell1
Ah ok je vois.
Merci pour cette Info! ;-)

Encore un pas en avant grâce au forum!