pb de passage de vraiable entre scripts

pb de passage de vraiable entre scripts - PHP - Programmation

Marsh Posté le 13-07-2006 à 10:29:24    

Bonjour à tous, j'ai un pb de passage de variable entre mes scripts php. En effet, j'ai une page structurée de la facon suivante :
-index.php qui est en fait un tableau avec une partie contenant un include :

Code :
  1. <table width="100%" border="1">
  2.   <tr>
  3.     <th colspan="2" scope="col">
  4.  <table width="100%">
  5.   <td align="left"><img src="/images/casino.jpg" /></td>
  6.   <td align="center">Gestion de la documentation projet Séquoïa</td>
  7.   <td align="right"><img src="/images/monoprix.jpg" width="141" height="56" /></td>
  8.  </table>
  9. &nbsp;</th>
  10.   </tr>
  11.   <tr>
  12.     <td width="42%" height="460">
  13.  <table width="100%" height="100%">
  14.   <td width="30%">
  15.    <img src="/images/sequoia.jpg" />   </td>
  16.   <td width="70%">
  17.     <? include ('textes/menu.php'); ?> &nbsp;
  18.   </td>
  19.   </table>
  20. </td>
  21.     <td width="58%" valign="top">
  22.  <? include ('textes/centre.php'); ?> &nbsp;
  23. </td>
  24.   </tr>
  25. </table>


 
 
la partie principale est la partie centrale ou les choses ses modifient :
 

Code :
  1. <?
  2. $cible = $_GET['cible'];
  3. $ancien = $_GET['ancien'];
  4. $nb = $_GET['nb'];
  5. $max = $_GET['max'];
  6. #error_reporting(0);
  7. switch ($page)
  8. {
  9. case 'add':
  10. include('http://localhost/news/secure/maj-news.php');
  11. break;
  12. case 'news':
  13. $page2 = "http://localhost/news/news.php?max=".$max."&nb=".$nb;
  14. include($page2);
  15. break;
  16. case 'sequoia':
  17. include('http://localhost/textes/seq.php');
  18. break;
  19. case 'monoprix':
  20. include('http://localhost/textes/monop.php');
  21. break;
  22. case 'default':
  23. include ('http://localhost/textes/defaut.php');
  24. break;
  25. }
  26. ?>


 
et ensuite les variables se perdent à ce niveau là, plus moyen de passer les variables mises en url, la page d'exemple :

Code :
  1. <?
  2. #error_reporting(0);
  3. $cible = $_GET['cible'];
  4. $BASE = "\\\\ip\\repertoire1\\répertoire2\\";
  5. $ancien = $_GET['ancien'];
  6. $rep = $BASE.$cible;
  7. $dir = opendir($rep);
  8. if ($rep != $BASE) {
  9. $ancien = substr($ancien, 43);
  10. ?><a href="?cible="<? echo $ancien;?>">Précédent</a><br><br><?
  11. while ($f = readdir($dir)) {
  12.    if(is_dir($rep.$f)) {
  13.      if ($f != ".." && $f !="." ){
  14.      ?><size ="1"><img src="../images/dossier.jpg">
  15.    <a href="?page=monoprix&cible=<? echo $cible.$f; ?>&ancien=<? echo $rep; ?>"><? echo $f; ?></a><?
  16.         echo "<br>";
  17.      }
  18.    }
  19. }
  20. closedir($dir);
  21. $dir = opendir($rep);
  22. while ($f = readdir($dir)) {
  23.    if(is_file($rep.$f)) {
  24.       $cible = substr($rep,3); ?>
  25.    <br><img src="/images/fic.jpg">
  26.    <a href="<? echo $rep.$f; ?>\" target="0">"<? ;echo $f;echo "</a>";
  27.    }
  28. }
  29. closedir($dir);
  30. }
  31. else
  32. {
  33. ?>
  34. <img src="../images/dossier.jpg"><a href="?page=monoprix&cible=01 - Organisation\">01 - Organisation</a><br />
  35. <img src="../images/dossier.jpg"><a href="?page=monoprix&cible=02 - Applications acquises\">02 - Applications acquises</a><br />
  36. <img src="../images/dossier.jpg"><a href="?page=monoprix&cible=03 - Nouveaux Projets\">03 - Nouveaux Projets</a><br />
  37. <img src="../images/dossier.jpg"><a href="?page=monoprix&cible=04 - Modèles et normes Casino\">04 - Modèles et normes Casino</a><br />
  38. <img src="../images/dossier.jpg"><a href="?page=monoprix&cible=05 - Maintenance Perfectible\">05 - Maintenance perfectilble</a><br />
  39. <img src="../images/dossier.jpg"><a href="?page=monoprix&cible=06 - QQQ\">06 - QQQ</a><br />
  40. <?
  41. }
  42. ?>


 
 
le script marche très bien quand on appelle directement la page, mais via le include de la page centre ca ne marche pas du tout, comment puis je faire svp ?
 
 
Merci de votre aide, bonne journée.

Reply

Marsh Posté le 13-07-2006 à 10:29:24   

Reply

Marsh Posté le 13-07-2006 à 12:23:41    

incliude en indiquant l'adresse internet de la page = récupération d'une page internet exactement comme le fait un navigateur.
 
Donc soit tu indiques l'adresse du fichier sous forme de chemin relatif, soit tu fais comme les navigateurs (en mettant les variables dans l'adresse de la page) en sachant que le code php du fichier inclus et celui du fichier principal seront exécuté séparément avec aucun partage de variable ni de code php.


Message édité par omega2 le 13-07-2006 à 12:24:08
Reply

Marsh Posté le 13-07-2006 à 13:35:00    

y a t il moyen de pouvoir transmettre simplement les variables, pour forcer l'héritage ? car si dans mon switch, il faut que je fasse un get des varibales, ca va alouridr le tout non ?

Reply

Marsh Posté le 13-07-2006 à 19:21:45    

Comme le dit omega2, dans le script où tu fais tous tes include, tu dois virer "http://localhost/" sinon tu changes de contexte et tu ne peux pas transmettre de variable.

Reply

Sujets relatifs:

Leave a Replay

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