Define() m'efface mes valeurs (PHP)

Fermé
ceramiccreaphp Messages postés 2 Date d'inscription lundi 21 juillet 2008 Statut Membre Dernière intervention 21 juillet 2008 - 21 juil. 2008 à 15:34
ceramiccreaphp Messages postés 2 Date d'inscription lundi 21 juillet 2008 Statut Membre Dernière intervention 21 juillet 2008 - 21 juil. 2008 à 15:49
Bonjour,

J'ai besoin de récupérer des valeurs dans ma base de données et avec de formater un email.
Pour simplifier mon code je définis à l'avance mon corps d'email dans une variable globale qui contient des variables qui vont se remplir avec les résultats de ma base de données.

Mon problème est qu'il semblerait que la fonction define() efface ces résultats extraient de ma base de données des variables.

Je précise que les résultats qui sont extraits de ma base de données ne sont pas vides, mon SELECT marche au poil.
Je teste mes variables contenant mes résultats avant et elles s'affichent bien.

Exemple :

//je vous passe la récupération des données dans la base, ça c'est ok.

extract($row); //je crée des variables ayant pour nom les champs de ma base de données

//admettons que j'ai un champ nom dans ma base de données
echo $nom; //pas de soucis ici cela m'affiche mon résultat, admettons que ce soit Fabien

//ici ça se complique
define("VAR_TEST", "Je m'appelle $nom");
echo VAR_TEST; //ici au lieu d'avoir à l'écran "Je m'appelle Fabien" j'obtiens "Je m'appelle "

Si ma variable $nom provient d'un POST formulaire ou si je la crée moi même il n'y a pas de soucis.

Là où j'affirme que define() "m'efface" le résultat provenant de la base de données dans la variable $nom :

extract($row);
$nom .= " c'est moi";
echo $nom; //j'obtiens à l'écran "Fabien c'est moi"

define("VAR_TEST", "Je m'appelle $nom");
echo VAR_TEST; //ici j'obtiens "Je m'appelle c'est moi"

Quelqu'un aurait-il un idée ? Merci d'avance.
A voir également:

1 réponse

ceramiccreaphp Messages postés 2 Date d'inscription lundi 21 juillet 2008 Statut Membre Dernière intervention 21 juillet 2008
21 juil. 2008 à 15:49
OK résolu, une bête question de priorité d'appel :(
0