Bonjour à tous,

je sais qu'une discussion existe déjà sur ce sujet ici, mais pour être honnête, je comprends pas bien cette histoire de "redéfinition de variable". Le but de la manoeuvre : un script "en_tete.inc.php" qui détermine si le client prend Ajax ou pas, et en fonction du résultat réécrit les liens des scripts appelant à partir d'extraction mysql.

en_tete.inc.php :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$lien = "appel_panier.inc.php5?titre=$titre&auteur=$auteur&prix=$prix&qty=1&action=1";
pour php et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$lien = "<a href=\"javascript:ajouterPanier($titre, $auteur, $prix, '1')\"><font color=\"#FFCC33\"><b>Ajoutez au panier</b></font></a>";
pour javascript.

dans accueil.php par exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
 include_once('./inc/en_tete.inc.php)';
puis :

extraction de $auteur, $prix et $titre, puis :

Je pensais que php résolvait tous les includes, et qu'au final on se retrouve avec un seul script où les redéfinitions sont possibles. $auteur, $prix et $titre sont bien définis après extraction mais php semble se "tromper" de variable et ne résoud pas celles incluses dans . Même en les définissant avant l'inclusion ça ne marche pas. Je ne comprends pas pourquoi la déclaration en global changerait quelque chose, puisqu'aucune de mes variables n'est au final dans une fonction.

Merci par avance de votre aide

Frédéric