Problème include php 5

Problème include php 5 - PHP - Programmation

Marsh Posté le 14-09-2010 à 18:48:19    

Bonjour,
 
J'ai un problème que je ne comprend pas, malgré 1h de recherche ... et je stagne !
 
J'ai une table :  
 

Code :
  1. $page_url["top"]      = "top.inc.php";
  2. $page_url["menu"]     = "menu.inc.php";
  3. $page_url["menu2"]    = "menu2.inc.php";
  4. ....


 
Lorque je tente de faire un include : <?php include($page_url["menu"]) ?>
J'ai cette erreur :

Code :
  1. Warning: include() [function.include]: Filename cannot be empty in C:\xampp\xampp\htdocs\MONSITE\index.php on line 39
  2. Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.;C:\xampp\xampp\php\PEAR') in C:\xampp\xampp\htdocs\MONSITE\index.php on line 39


 
Mais si je fait un include tout bête, tel que : <?php include("menu.inc.php" ) ?>
Bah ca fonctionne ....
( le but étant de pouvoir récupérer une variable dans l'url pour les changements de pages ... du classique ! $page = $_GET['page']; )
 
Pour info, cela ne fonctionne plus depuis que j'ai mis à jour php en 5.3.2 (tourne très bien sur du 5.2.8 visiblement ....)
 
Merci d'avance pour votre aide !

Reply

Marsh Posté le 14-09-2010 à 18:48:19   

Reply

Marsh Posté le 15-09-2010 à 11:37:10    

on peut voir le code complet du script, svp?


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 16-09-2010 à 01:06:05    

J'ai résolu le problème, mais je ne comprend pas :
 
Mes balises php étaient ouvertes ainsi : <? .... ?>
Voyant qu'un autre script du même genre fonctionnait parfaitement sur cette même version de php, à un détail pres : les balises étaient ouvertes ainsi : <?php .....?>
Je teste et ... miracle !
 
Je précise une chose : je n'avais pas touché au php depuis 2 ans ... et que j'ai toujours ouvert les balise simplement comme ça : <? ... ?>
 
Merci d'avance pour l'éventuelle explication ^^


Message édité par T2k le 16-09-2010 à 01:07:04
Reply

Marsh Posté le 16-09-2010 à 08:44:45    

Regarde dans ton php.ini . Tu auras "short_tag 0" écrit quelque part. Ceci desactive la possibilité de se passer du "php" dans le tag


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 16-09-2010 à 10:02:46    

+1 pour le short_tag. Tu vois, si t'avais posté tout ton code, on l'aurait vu :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 17-09-2010 à 10:29:24    

Effectivement ! Je ne m'y attendais pas du tout !
 
Merci pour votre aide et la petite explication :)
(la prochaine fois je mettrai tout le script, promis ^^)

Reply

Marsh Posté le 20-09-2010 à 14:38:46    

Petit conseil pour tes devs, développe en étant dans un environnement restrictif au possible :
Pars du fait que tu n'as pas de gestion des variables globales, que l'error reporting est en E_ALL, ce qui te contraindra à corriger même les notices :)
 
Tu auras ainsi un dev bien plus propre :)

Reply

Sujets relatifs:

Leave a Replay

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