Ça ne fonctionne pas : $type = '_GET'; $$type['mavar']; Normal ? - PHP - Programmation
Marsh Posté le 15-03-2006 à 16:57:11
YeLL > $$ est à éviter comme toutes les méthodes permettant d'indiquer un nom de variable à la volé. Ca empéche toute possibilité de débuguage par simple lecture du code et dans 99.999% des cas, ca dénote une erreur de conception du code.
Au lieux d'utiliser cette méthode là, vérifie si t'as pas moyen de mieux gérer tes variables.
Marsh Posté le 15-03-2006 à 17:00:56
Un bel exemple de code avec les registerglobals sur off :
Code :
|
PS : exemple de la doc
Marsh Posté le 15-03-2006 à 17:19:02
chaced > Et évidement, tu oublis d'indiquer la page en question ( http://fr2.php.net/manual/fr/faq.misc.php ) et le fait que même dans cette page ils indiquent que ca n'est à n'utiliser que dans des cas particulier et qu'il vaut mieux utiliser les variables "superglobales" plustôt que de remettre (ou simuler d'ailleur) le "register_globals" à "on".
PS : En plus cet exemple est mal fait, ils auraient pu au moins utiliser la fonction qui donne la liste des vrai superglobales plustôt que d'en donner une liste générique qui est potentiellement fausse en fonction des config.
Marsh Posté le 15-03-2006 à 17:28:01
omega2 a écrit : chaced > Et évidement, tu oublis d'indiquer la page en question ( http://fr2.php.net/manual/fr/faq.misc.php ) et le fait que même dans cette page ils indiquent que ca n'est à n'utiliser que dans des cas particulier et qu'il vaut mieux utiliser les variables "superglobales" plustôt que de remettre (ou simuler d'ailleur) le "register_globals" à "on". |
Cet exemple c'est surtout si tu es en mutualisé et donc pas acces au php.ini, et que tu as un site entier codé sans utilisation de superglobales... donc si tu ne veux pas repasser toutes les pages.
Marsh Posté le 16-03-2006 à 08:36:54
Merci à vous deux. J'ai trouvé une meilleure solution et j'avais un peu oublié ce message Désolé de pas avoir averti que c'était reglé.
Comme l'a dit omaga2 :
Citation : dans 99.999% des cas, ca dénote une erreur de conception du code. |
Et c'est justement ce que j'ai fais, j'ai revu toute cette partie et j'ai recodé ça proprement. Je me suis assez pris la tête parce que c'était un cas assez spécial, mais j'ai fini par y arriver
Je suis en train de dev un système de gestion d'eCommerce de A à Z, et c'est plutôt interessant à faire Par contre c'est un gros projet et je me retrouve parfois devant des cas assez difficile. (je n'aime pas trop osCommerce)
Donc encore merci
A+
Marsh Posté le 15-03-2006 à 15:35:19
Bonjour à tous,
Sous Php, si on fait :
Cela va afficher 'Cool'
Par contre je n'arrive pas utiliser le même procédé avec les variables de type $_GET, $_POST etc...
L'exemple ci-dessus m'affiche :
Cool
Notice: Undefined variable: _ in C:\Program Files\wamp\www\perlesv2\index.php on line 7
Quelqu'un sait il pourquoi ? Ou va-t-il falloir que je règle le problème à coup d'eval() ? Ce que j'aimerais eviter.
Message édité par Dj YeLL le 15-03-2006 à 15:36:52
---------------
Gamertag: CoteBlack YeLL