[Google Map API] Version 2.5

Mammouth du PHP | 965 Messages

30 juin 2008, 10:41

Bonjour,

A ma grande surprise, je retourne sur les sites ou j'ai mis la classe de google pour faire de la géo-localisation, plus rien ne marche !

Alors, après quelque recherche, je n'ai rien trouver sur leur site internet disant qu'il y avait quelque chose de neuf, je me rappel que c'est sur phpinsider que j'ai trouver la class, je télécharge la nouvelle, en me disant ok juste une mise à jour rien de méchant mais la toujours rien...

Message d'erreur :
Warning: file_get_contents() [function.file-get-contents]: php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution in url/GoogleMapAPI.class.php on line 1343
et :
Warning: file_get_contents(http://maps.google.com/maps/geo?&q=cequejecherche&output=csv&key=maclef) [function.file-get-contents]: failed to open stream: Connection timed out in urlGoogleMapAPI.class.php on line 1343

Bon ligne 1343 sur la classe allons y :
    /**
     * fetch a URL. Override this method to change the way URLs are fetched.
     * 
     * @param string $url
     */
    function fetchURL($url) {

        return file_get_contents($url);

    }
ok goto manuel php pour file_get_contents :

http://fr.php.net/file_get_contents donc :


This function is similar to file(), except that file_get_contents() returns the file in a string, starting at the specified offset up to maxlen bytes. On failure, file_get_contents() will return FALSE.

file_get_contents() is the preferred way to read the contents of a file into a string. It will use memory mapping techniques if supported by your OS to enhance performance.
Après déduction, bon je me plante peut être sur tout le truc mais je pense que c'est le fichier qu'il n'arrive pas a lire qui lui est donner en URL a savoir : http://maps.google.com/maps/geo?&q=cequ ... key=maclef.

donc est ce qu'il y a une manip' spécial a faire depuis le changement de version ?

ViPHP
ViPHP | 5924 Messages

30 juin 2008, 12:03

Essaye d'accéder par ton navigateur à http://maps.google.com/maps/geo?&q=cequ ... key=maclef par ton navigateur pour voir si cela ne vient pas du serveur...

Mammouth du PHP | 965 Messages

30 juin 2008, 12:06

Erf ok bon le server devait être down ce matin, apparemment ça remarche, gros coup de frayeur quand même :/

lux
Eléphant du PHP | 372 Messages

30 juin 2008, 14:20

L'ideal ce serait d'ajouter une condition if, au cas ou le serveur est down, et à ce moment tu affiches : le service est momentanément indisponible 8-)

Mammouth du PHP | 965 Messages

01 juil. 2008, 14:50

Bon toujours un problème avec google map sur in site internet hebergé par Orange.

Quand je test en local tout marche parfaitement, d'ailleurs les scripts que j'ai utilisé sont simplement repris d'autres sites ou je les ai utilisé.

Dans l'erreur javascript retourné par webdevelopper sur le pop up ou j'appelle l'API de google map l'erreur suivante :
onLoad() is not defined.
Donc je regarde et je vois que dans onLoad il n'arrive pas a trouver :
map.addControl(new GLargeMapControl());
map.addControl(new GScaleControl());
map.addControl(new GOverviewMapControl());
var point = new GLatLng(,);
Donc il n'arrive pas a lire les coordonnées renvoyées par google, apparemment puisqu'il affiche bien les données que je lui envois, donc je pense qu'il n'accepte pas le flux de google.

Est ce qu'il faut une configuration particulière sur le server a demander a Orange ou est ce qu'il faut faire quelque chose sur le script utilisé ?

Mammouth du PHP | 965 Messages

16 juil. 2008, 10:49

Je me permet de remonter le topic, je n'ai toujours pas résolu le problème sur cette hébergement orange, mutualisé, leur seul réponse a été "il vous manque un fichier sur la page de script", le fichier en question était un fichiers mootools.js inutile a google map qui avait été un copier / coller d'une ancienne version :roll:

Donc le flux ne passe toujours pas, avez vous un hébergement orange mutualisé, ou avez vous déjà rencontrer le problème?

Mammouth du PHP | 959 Messages

16 juil. 2008, 12:37

A parement, ton Warning sur ton file_get_contents() venait du fait que PHP n'acceptait pas d'ouvrir une URL sur un autre serveur...

Pour ton message d'erreur, c'est simple :
if( !@file_get_contents(....) ){
   echo 'Service pas dispo pour le moment...';
}
Surtout, n'oubie pas le point d'exclamation devant, si t'oublie l'arobase, c'est pas très grave, mais ça fait plus class ;)

Mammouth du PHP | 965 Messages

16 juil. 2008, 13:17

A parement, ton Warning sur ton file_get_contents() venait du fait que PHP n'acceptait pas d'ouvrir une URL sur un autre serveur...

Pour ton message d'erreur, c'est simple :
if( !@file_get_contents(....) ){
   echo 'Service pas dispo pour le moment...';
}
Surtout, n'oubie pas le point d'exclamation devant, si t'oublie l'arobase, c'est pas très grave, mais ça fait plus class ;)
Oui je vais modifier pour indiquer que le service est indisponible c'est quand même plus sympa pour l'utilisateur.

Par contre pour l'erreur qui continue la, j'ai remis mootools, il trouve donc bien le onLoad, mais toujours le même problème par la suite il ne trouve pas les lattiutdes et longitudes des points donnés, pourtant j'ai retaper ces mêmes coordonnées sur google map et il retrouve bien le point.

Sachant qu'en local je n'ai aucun soucis et que c'est utilisé sur d'autres sites.

Mammouth du PHP | 959 Messages

16 juil. 2008, 13:21

Tout à l'heure tu à dit :

Code : Tout sélectionner

var point = new GLatLng(,);
Essaies de débugger les variables qui s'y trouvent entre la virgule, genre tu fais un echo, j'usqu'à remonté à la source...

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

16 juil. 2008, 13:37

Surtout, n'oubie pas le point d'exclamation devant, si t'oublie l'arobase, c'est pas très grave, mais ça fait plus class ;)
Est-ce que tu sais à quoi il sert cet arobase ?

Mammouth du PHP | 959 Messages

16 juil. 2008, 13:40

Moi ? oui, à cacher le me message d'erreur, histoire de pas inquiéter le visiteur surtout....

et le point d'exclamation à inverser TRUE et FALSE, si c'est pas ça, je sais à quoi ça sers mais je sais pas comment l'expliquer :P

Mammouth du PHP | 965 Messages

16 juil. 2008, 14:22

Tout à l'heure tu à dit :

Code : Tout sélectionner

var point = new GLatLng(,);
Essaies de débugger les variables qui s'y trouvent entre la virgule, genre tu fais un echo, j'usqu'à remonté à la source...
Ce sont les éléments retourné par google une fois la latitude et la longitude trouvées a partir de l'adresse et CP qui est envoyé par php via le getmarker et donc, comme cela marche en loca, j'exclue la possibilité d'erreur de requêtes sachant que je me connecte en local sur la bdd distante.

Mammouth du PHP | 959 Messages

16 juil. 2008, 18:02

Ah :?

Alors je pense que c'est du côté de ton hébergeur que ça bloque :/