Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2887 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  probleme pour inserer une requete php dans du javascript

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme pour inserer une requete php dans du javascript

n°1480570
wydook
Posté le 23-11-2006 à 12:44:38  profilanswer
 

Bonjour à tous.
Bonjour à tous.
 
J'ai inserer google maps sur mon site et j'utilise le géocoder. Ceci me permet de mettre le nom de la ville que je désire dans le code, et de m'afficher la carte.  
 

Code :
  1. <?php
  2. // on se connecte à notre base
  3. $base = mysql_connect ('***', '***', '***');
  4.     mysql_select_db('***', $base);
  5. $nombreDeMessagesParPage = 20; // Le nombre de news sur chaque page
  6. // On récupère le nombre total de messages
  7. $retour = mysql_query('SELECT COUNT(*) AS obs FROM observation');
  8. $donnees = mysql_fetch_array($retour);
  9. $totalDesMessages = $donnees['nb_observations'];
  10. // On calcule le nombre de pages à créer
  11. $nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);
  12. if (isset($_GET['num_page']))
  13. {
  14.     $page = $_GET['num_page']; // On récupère le numéro de la page indiqué dans l'adresse (news.php?num_page=4)
  15. }
  16. else // La variable n'existe pas, c'est la première fois qu'on charge la page
  17. {
  18.     $page = 1; // On se met sur la page 1 (par défaut)
  19. }
  20. // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
  21. $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
  22. // lancement de la requête. on sélectionne les news que l'on va ordonner suivant l'ordre "inverse" des dates (de la plus récente à la plus vieille : DESC) tout en ne sélectionnant que le nombre voulu de news à afficher (LIMIT)
  23. $sql = 'SELECT id, ville, date, texte_news, auteur, departement, temps FROM observations
  24. ORDER BY id desc LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage;
  25. // on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
  26. $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
  27. // on compte le nombre de news stockées dans la base de données
  28. $nb_news = mysql_num_rows($req);
  29. if ($nb_news == 0) {
  30.     echo 'Aucune observation enregistrée.';
  31. }
  32. else {
  33.     // si on a au moins une news, on l'affiche
  34.     while ($data = mysql_fetch_array($req)) {
  35.         // on décompose la date  
  36.         sscanf($data['date'], "%4s-%2s-%2s %2s:%2s:%2s", $an, $mois, $jour, $heure, $min, $sec);
  37.         // on affiche les résultats
  38.       echo '<p id="'.$data['id'].'">'; ?>
  39.   <table>
  40.  
  41.     <thead>
  42.       <!-- En-tête du tableau -->
  43.       <tr>
  44.         <th bgcolor="#663300">
  45.           <?  echo  , stripslashes(htmlentities(trim($data['ville']))) ; ?>
  46.           (<?  echo  , stripslashes(htmlentities(trim($data['departement']))) ; ?> )</th>
  47.       </tr>
  48.     </thead>
  49.     <tbody>
  50.       <!-- Corps du tableau -->
  51.       <tr>
  52.         <td bgcolor="#FFEBD7">
  53.          Posté par:  <strong><?  echo '' , stripslashes(htmlentities(trim($data['auteur']))) ; ?></strong>, le <? echo '' , $jour , '/' , $mois , '/' , $an , ' à ' , $heure , ':' , $min , '' ;  ?>
  54.           <div align="left">
  55.           </div></td>
  56.       </tr>
  57.       <tr>
  58.         <td bgcolor="#FFEBD7"><div align="center"><img src="<? echo  , stripslashes(htmlentities(trim($data['temps'])));?>" /><br />
  59.            <br />
  60.             <u><font color="#006600">D&eacute;tail de l'observation:</font></u><br />
  61.             <br />
  62.             <? if (isset($data['texte_news']))
  63. {
  64.      $texte_news = stripslashes($data['texte_news']); // On enlève les slash qui se seraient ajoutés automatiquement  
  65.      $texte_news = htmlentities($data['texte_news']); // On rend inoffensives les balises HTML que le visiteur a pu rentrer  
  66.      $texte_news = nl2br($data['texte_news']); // On crée des <br /> pour conserver les retours à la ligne  
  67.      
  68.      // On fait passer notre texte à la moulinette des Regex  
  69.      $data['texte_news'] = preg_replace('!\[b\](.+)\[/b\]!isU', '<strong>$1</strong>',$data['texte_news']);
  70.      $data['texte_news']= preg_replace('!\[i\](.+)\[/i\]!isU', '<em>$1</em>', $data['texte_news']);
  71.          $data['texte_news']= preg_replace('!\[CENTER\](.+)\[/CENTER\]!isU', '<div align="center">$1</div>', $data['texte_news']);
  72.     $data['texte_news']= preg_replace('!\[color=(red|green|blue|yellow|purple|olive)\](.+)\[/color\]!isU', '<span style="color:$1">$2</span>',$data['texte_news']);
  73.     $data['texte_news'] = preg_replace("#\[url\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/url\]#sie", "'<a href=\"\\1' . str_replace(' ', '%20', '\\3') . '\" >\\1\\3</a>'", $data['texte_news']);
  74.         $data['texte_news'] = preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/", "<a href=\"$1\" >$2</a>", $data['texte_news']);
  75.                  $data['texte_news'] = preg_replace('!\[URL=(.+)\](.+)\[/URL\]!isU','<a href="$1" >$2</a>', $data['texte_news']);
  76. $data['texte_news'] = preg_replace('!\[img\](.+)\[/img\]!iU', '<img src="$1" border="0" / style="filter:alpha(opacity=100); -moz-opacity: 1;" onmouseover="makevisible(this,0)" onmouseout="makevisible(this,1)"/>', $data['texte_news']);
  77. $data['texte_news'] = preg_replace('!\[email\]([a-z0-9._-]+@[a-z0-9._-]{2}\.[a-z]{2,4})\[/email\]!','<a href="mailto:$1">$1</a>', $data['texte_news']);
  78.      
  79. }
  80.       echo '' , nl2br(stripslashes(trim($data['texte_news']))) ; ?>
  81.           </div> <div id="map" style="width: 200px; height: 200px"></div>
  82. <script>
  83.    function showAddress(address) {
  84.   geocoder.getLatLng(
  85.     address,
  86.     function(point) {
  87.       if (!point) {
  88.         alert(address + " not found" );
  89.       } else {
  90.         map.setCenter(point, 5);
  91.         var marker = new GMarker(point);
  92.         map.addOverlay(marker);
  93.         //marker.openInfoWindowHtml(address);
  94.       }
  95.     }
  96.   );
  97. }
  98. </script>
  99. <script type="text/javascript">
  100. var map = new GMap2(document.getElementById("map" ));
  101. var geocoder = new GClientGeocoder();
  102. showAddress('<?  echo  , stripslashes(htmlentities(trim($data['ville']))) ; ?>');
  103. map.setMapType(G_SATELLITE_TYPE);
  104. </script></td>
  105.       </tr>
  106.     </tbody>
  107.   </table>
  108. <?
  109.        
  110.     }
  111. }
  112. // on libère l'espace mémoire alloué à cette requête
  113. mysql_free_result ($req);
  114. ?><br />
  115. <br />
  116. >Page :<br />
  117.       <?
  118. for ($i = 1 ; $i <= $nombreDePages ; $i++)
  119. {
  120.     echo '<a href="actualites.php?num_page=' . $i . '">' . $i . '</a> ';
  121. }
  122. ?>
  123.       <?
  124. // on ferme la connexion à la base de données
  125. mysql_close (); ?>


 
 
Mon problème ce situ à cette ligne (vers le bas du formulaire) quand je fait appel à la requete php qui m'inscrira donc le nom de la ville automatiquement.

Code :
  1. showAddress('<?  echo  , stripslashes(htmlentities(trim($data['ville']))) ; ?>');


 
 
Ceci ne fonctionne pas.  Si quelqu'un voit l'erreur, merci de me prévenir  :)

mood
Publicité
Posté le 23-11-2006 à 12:44:38  profilanswer
 

n°1480576
Ricco
Retour au pays
Posté le 23-11-2006 à 13:07:00  profilanswer
 

"Ceci ne fonctionne pas." ... ah et tu t'attends à ce que ça fasse quoi ?
A quoi ressemble le html généré ?

n°1480579
wydook
Posté le 23-11-2006 à 13:11:02  profilanswer
 

Ricco a écrit :

"Ceci ne fonctionne pas." ... ah et tu t'attends à ce que ça fasse quoi ?
A quoi ressemble le html généré ?


 
 
Quand j'ouvre la page en question, j'ai une fenêtre qui s'ouvre et qui me dit que je n'est renseigner aucun nom de ville.
 
A l'origine cette ligne qui me pose problème était comme ca:
 

Code :
  1. showAddress('Paris');


n°1480679
soju
One shot !
Posté le 23-11-2006 à 14:34:38  profilanswer
 

- donne nous le code source de ta page générée
- évite <? , met plutôt <?php

n°1480683
wydook
Posté le 23-11-2006 à 14:43:14  profilanswer
 

edit


Message édité par wydook le 23-11-2006 à 14:45:00
n°1480697
wydook
Posté le 23-11-2006 à 14:57:48  profilanswer
 

soju a écrit :

- donne nous le code source de ta page générée
- évite <? , met plutôt <?php


 
voici la page en question http://www.meteo-world.com/formula [...] tions2.php
 
 
Je ne met pas le code ici, il est trop long  :)  

n°1480714
soju
One shot !
Posté le 23-11-2006 à 15:13:02  profilanswer
 

je vois par exemple showAddress('Narbonne'); donc ton echo fonctionne bien (même si y'a une virgule qui ne sert à rien)
 
par contre c'est le bazar dans ton javascript... tu déclares une quinzaine de fois la fonction showAddress... tu crées une quinzaine de fois l'objet GMap2...etc... un nettoyage s'impose

n°1480741
wydook
Posté le 23-11-2006 à 15:30:13  profilanswer
 

C'est normal que ca s'affiche plusieurs fois, c'est en fonction du nom des villes. Dans la page il doit y avoir plusieurs fois la carte google maps, or je m'apercoit que seule la carte de Lyon fonctionne vers le milieu de la page et pas les autres cartes.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  probleme pour inserer une requete php dans du javascript

 

Sujets relatifs
Problème avec "echo"Probleme d'execution de requete
Un probleme de timout?Problème de débutant: erreur dès le debut "aucune action ne peut...
Requete PHP MYSQLJavascript + Liste déroulante <select>
Probleme d'utilisation de Webserviceprobleme jni
insérer des octets en debut de tableau 
Plus de sujets relatifs à : probleme pour inserer une requete php dans du javascript


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR