Pb avec plusieurs include PHP sur une même page

Pb avec plusieurs include PHP sur une même page - PHP - Programmation

Marsh Posté le 17-10-2005 à 21:35:01    

Bonjour
 
J'ai un problème. Sur la page php de mon site, j'ai plusieurs cadres d'include. Tout marche parfaitement sauf que lorsque je charge un des cadres, j'ai les autres qui deviennent vides. Ce que je voudrais c'est que lorsque je change un des cadres, les autres déjà s'affichent, mais qu'en plus ils ne bougent pas (en fonction des choix précédants de l'utilisateurs).
 
Si vous avez du mal à me comprendre, j'ai mis la page en question en ligne.
 
http://www.meteobell.com/Test/_classification.php
 
(C'est une page Test, donc les images de fonds sont blanches (c normal) et la javascript du menu situé en haut n'est pas en route.)
 
Pour comprendre ce que je veux dire, testez en cliquant sur un des liens des menus pour changer les cadres d'includes. (si vous ne voyez que les titres des cadres d'includes c normal, j'ai pas encore écrit le contenu).
 
Voilà, j'imagine que c mon code php qui est trop simple.
 
Le voici (inutile de mettre en exemple les 6 cadres, je mets que les 2 premiers pour l'ex) :
 
 

Code :
  1. (.....je vous met pas ce qu'il y avant c inutile aussi....)
  2. <div id="classification">
  3. <h1>Classification des Nuages</h1>
  4.   <div id="class_menu_01"><!--Les Menus-->
  5.    <div class="class_element_menu">
  6.     <h2>Classification Par Altitude</h2>
  7.      <ul>
  8.       <li><a href="_classification.php?page=altitude#classification">Classification par Altitude</a></li>
  9.       <li><a href="_classification.php?page=haute_altitude#classification">Nuages de Haute Altitude</a></li>
  10.       <li><a href="_classification.php?page=moyenne_altitude#classification">Nuages de Moyenne Altitude</a></li>
  11.       <li><a href="_classification.php?page=basse_altitude#classification">Nuages de Basse Altitude</a></li>
  12.       <li><a href="_classification.php?page=altitude_vertical#classification">Nuages à Dévelloppement Vertical</a></li>
  13.      </ul>
  14.     </div>
  15.    </div>
  16.    <div id="class_definition"><!--Code PHP  pour le cadre. Permet d'avoir un cadre différent par onglet, sans changer de page-->
  17.                        
  18.     <?php
  19.      if (!isset($_GET['page'])) $page= 'altitude';
  20.      else $page= $_GET['page'];
  21.      switch($page)
  22.        {
  23.         case 'altitude': include ('Classification/Par Altitude/altitude.html');break;
  24.         case 'haute_altitude': include ('Classification/Par Altitude/haute_altitude.html');break;
  25.         case 'moyenne_altitude': include ('Classification/Par Altitude/moyenne_altitude.html');break;
  26.         case 'basse_altitude': include ('Classification/Par Altitude/basse_altitude.html');break;
  27.  case 'altitude_vertical': include ('Classification/Par Altitude/altitude_vertical.html');break;
  28.        }
  29.     ?>     
  30.    </div>
  31.    <hr/>
  32.    <div id="class_menu_02"><!--Les Menus-->
  33.     <div class="class_element_menu">
  34.      <h2>Classification Par Genre</h2>
  35.       <ul>
  36.        <li><a href="_classification.php?page=genre#class_menu_02">Classification par Genre</a></li>
  37.        <li><a href="_classification.php?page=cirrus#class_menu_02">Cirrus (Ci)</a></li>
  38.        <li><a href="_classification.php?page=cirrocumulus#class_menu_02">Cirrocumulus (Cc)</a></li>
  39.        <li><a href="_classification.php?page=cirrostratus#class_menu_02">Cirrostratus (Cs)</a></li>           
  40.        <li><a href="_classification.php?page=altocumulus#class_menu_02">Altocumulus (Ac)</a></li>
  41.        <li><a href="_classification.php?page=altostratus#class_menu_02">Altostratus (As)</a></li>
  42.        <li><a href="_classification.php?page=nimbostratus#class_menu_02">Nimbostratus (Ns)</a></li>
  43.        <li><a href="_classification.php?page=stratocumulus#class_menu_02">Stratocumulus (Sc)</a></li>
  44.        <li><a href="_classification.php?page=stratus#class_menu_02">Stratus (St)</a></li>
  45.        <li><a href="_classification.php?page=cumulus#class_menu_02">Cumulus (Cu)</a></li>
  46.        <li><a href="_classification.php?page=cumulonimbus#class_menu_02">Cumulonimbus (Cb)</a></li>
  47.       </ul>
  48.      </div>
  49.     </div>
  50.     <div id="class_definition"><!--Code PHP  pour le cadre. Permet d'avoir un cadre différent par onglet, sans changer de page-->
  51.                         
  52.      <?php
  53.       if (!isset($_GET['page'])) $page= 'genre';
  54.       else $page= $_GET['page'];
  55.       switch($page)
  56.        {
  57.         case 'genre': include ('Classification/Par Genre/genre.html');break;
  58.  case 'cirrus': include ('Classification/Par Genre/cirrus.html');break;
  59.  case 'cirrocumulus': include ('Classification/Par Genre/cirrocumulus.html');break;
  60.  case 'cirrostratus': include ('Classification/Par Genre/cirrostratus.html');break;
  61. case 'altocumulus': include ('Classification/Par Genre/altocumulus.html');break;
  62. case 'altostratus': include ('Classification/Par Genre/altostratus.html');break;
  63.  case 'nimbostratus': include ('Classification/Par Genre/nimbostratus.html');break;
  64.  case 'stratocumulus': include ('Classification/Par Genre/stratocumulus.html');break;
  65. case 'stratus': include ('Classification/Par Genre/stratus.html');break;
  66.  case 'cumulus': include ('Classification/Par Genre/cumulus.html');break;
  67.  case 'cumulonimbus': include ('Classification/Par Genre/cumulonimbus.html');break;
  68.        }
  69.      ?>     
  70.     </div>
  71.     <hr/>
  72. (.....etc....)


 
 
 
Si vous pouviez m'aider ou me mettre sur la voie, je vous en serais infiniment reconnaissant . :jap:  :jap:

Reply

Marsh Posté le 17-10-2005 à 21:35:01   

Reply

Marsh Posté le 17-10-2005 à 21:54:29    

tu peux garder plusieurs variables : une pour chaque cadre  
 
au passage pour eviter les switch , tu peux faire qq chose du genre :  

Code :
  1. if(!isset($page) || file_exists("./".$page.".html" )
  2.     $page = 'genre';
  3. require("./".$page.".html" );

Reply

Marsh Posté le 17-10-2005 à 22:05:39    

Merci bien flo850 pour cette réponse on ne peut plus rapide :jap:  
 
Je ne suis pas un as du php. Aussi si je comprend bien, je met ce que tu m'as donné à la place de ceci :
 

Code :
  1. if (!isset($_GET['page'])) $page= 'genre';
  2.      else $page= $_GET['page']; 
  3.      switch($page)


 
Tout simplement ?
 
Et le reste du code php, c'est la même chose ?


Message édité par Damonya le 17-10-2005 à 22:07:21
Reply

Marsh Posté le 17-10-2005 à 22:30:48    

Pffff ah bah oui je viens de comprendre, je suis bête j'utilise toujours la même variable 'page' pour tous les cadres

Reply

Marsh Posté le 17-10-2005 à 22:45:06    

Bon j'ai changé mes variables et donc les 6 cadres s'affichent maintenant, mais comme je le redoutais à chaque changement dans un des cadres, il me remet les autres cadres à l'origine, bref mon code ne prend pas en compte les choix précédants.

Reply

Marsh Posté le 17-10-2005 à 23:55:23    

Ca fait pas mal d'include tout ca pour une seule page


Message édité par belette33 le 17-10-2005 à 23:55:34

---------------
création de site internet pour mairie | Le blog de Manu
Reply

Marsh Posté le 17-10-2005 à 23:58:13    

Euh oui mais le probleme n'est pas là. Des idées, du comment faire ?
 
 
Bon pour être plus explicite, ce que je voudrais, c'est qu'ils gardent (si c possible) les choix d'ouvertures précédants.
 
En fait pour comprendre l'utilité du système, il faut savoir par exemple qu'un cumulus (2ème cadre) peut être humilis (3eme cadre) ou bien mediocris (3eme cadre).
On peut trouver des cirrus (2eme) spissatus (3eme) intortus (4ème) mamma (5ème)
ou bien des cirrus (2ème) floccus (3ème) undulatus (4ème) mamma (5ème)
etc etc, les choix sont nombreux.
 
D'où l'utilité de garder les choix précédant de l'utilisateur.


Message édité par Damonya le 20-06-2009 à 17:27:45
Reply

Marsh Posté le 19-10-2005 à 17:11:34    

Bon laissez tomber j'ai trouvé la solution ailleurs.
 
Avec des variables de sessions.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed