Luckyluk Posté 11 Juillet 2005 Posté 11 Juillet 2005 resalut, des que je mets à faire du php.... hehe les bug commence à apparaitre <? echo"<title>Palissade robusto photo ".$num."</title>"; ?> quand je mets ça.... il me balance une jolie Notice: Undefined variable: num in c:\program files\easyphp1-7\www\siterobusto\photo-robusto.php on line 9 pourtant, il ne me semble pas qu'il faille declarer quoi que ce soit... sans doute encore une question de syntaxe?
Tizel Posté 11 Juillet 2005 Posté 11 Juillet 2005 C'est quoi ta variable $num ? Elle apparait dans l'URL ? Dans ce cas, essaye : $num=$_GET["num"] ou $num=$_POST["num"] suivant le type de la requête (GET - cas général - ou POST - via un formulaire) Tizel
Dan Posté 11 Juillet 2005 Posté 11 Juillet 2005 Salut Luc, Avec les versions récentes de php, les variables globales sont définies à "off" par défaut. C'est ce que t'explique Tizel, il faut donc utiliser $_GET['num'] ou $_POST['num'] selon la méthode utilisée. Une alternative serait de mettre register_globals à "on" dans le fichier php.ini, mais autant prendre tout de suite les bonnes habitudes, non ? Dan
Sarc Posté 11 Juillet 2005 Posté 11 Juillet 2005 Hum par contre chez moi, quand une variable n'a pas été définie, il n'y a pas de message d'erreur pour autant ! et heureusement... Il me soulerait Il n'y a pas un autre réglage à faire pour virer ce message d'erreur ?
Luckyluk Posté 11 Juillet 2005 Auteur Posté 11 Juillet 2005 hehe, j'ai donc decide... de mettre le register_globals sur ON (comme chez mon hebergeur)... pour prendre les bonne haitudes j'ai eteins apache puis redemarer...mais ça ne semble pas fonctionner... je vais donc retenter avec les get et post mais mes precedents tests avait echoué... pour info, dans mon test, je ne transmet pas de variable mais cela se fera par url...
Dan Posté 11 Juillet 2005 Posté 11 Juillet 2005 C'est selon le paramétrage de php.ini, avec les niveaux d'alerte demandés. Voir la définition de error_reporting dans ce fichier
Dan Posté 11 Juillet 2005 Posté 11 Juillet 2005 Salut Luc, C'est que la variable error_reporting est mise à E_ALL Trouve le fichier php.ini, il doit se trouver dans c:\windows à mon avis. Cette variable est définie dedans.
Luckyluk Posté 11 Juillet 2005 Auteur Posté 11 Juillet 2005 ; - error_reporting = E_ALL [Code Cleanliness, Security(?)]; By default, PHP surpresses errors of type E_NOTICE. These error messages; are emitted for non-critical errors, but that could be a symptom of a bigger; problem. Most notably, this will cause error messages about the use; of uninitialized variables to be displayed. apres avoir mis les mauvaise lignes... je remplace le E_ALL par quoi?
Sarc Posté 11 Juillet 2005 Posté 11 Juillet 2005 Héhé, je te conseille d'aller voir le manuel PHP qui t'expliquera toutes les erreurs, et tu pourras choisir le degré d'error_reporting facilement...
Anonymus Posté 11 Juillet 2005 Posté 11 Juillet 2005 Si tu ne veux pas toucher à ce fichier (php.ini), tu peux mettre, au tout début de ton script, la fonction : error_reporting(0); // Désactiver le rapport d'erreurs Lorsque tu cherches une erreur, tu passes cette fonction à : error_reporting(E_ALL); // Repporter toutes les erreurs PHP. Le plus simple étant alors de connaitre son : $_SERVER['DOCUMENT_ROOT'] et donc ajouter les lignes : error_reporting(0);if ($_SERVER['DOCUMENT_ROOT']=="c:/home"){error_reporting(E_ALL);} Ce qui signifie : On place le gestionnaire d'erreur à '0' aucune erreur retournée (sauf les plus graves), et si l'on est en 'local', alors on renvoie toutes les erreurs Voilà,
Luckyluk Posté 11 Juillet 2005 Auteur Posté 11 Juillet 2005 merci à tous, j'ai fini par reussir à mettre mon register_globals sur ON et tout fonctionne bien... faudra tout de même que je reussise à utiliser mes variables sans çà...sinon le jour mon hebergeur le mets sur OFF me vla chocolat bleu pâle.... pour info, dans ma version easyphp 1.7 le php.ini se trouve dans le repertoire apache
NiCoS Posté 11 Juillet 2005 Posté 11 Juillet 2005 faudra tout de même que je reussise à utiliser mes variables sans çà...sinon le jour mon hebergeur le mets sur OFF Je suis même étonné que ce ne soit pas déjà le cas...
Dan Posté 11 Juillet 2005 Posté 11 Juillet 2005 faudra tout de même que je reussise à utiliser mes variables sans çà...sinon le jour mon hebergeur le mets sur OFFme vla chocolat bleu pâle.... A mon avis, il aurait été plus sage de le laisser à "off". Parce que les variables $_GET et $_POST fonctionnent dans les deux cas, et ton site sera plus sécurisé et moins sujet aux attaques. De plus, tant qu'à apprendre un langage de programmation, autant prendre tout de suite les bonnes habitudes
Luckyluk Posté 11 Juillet 2005 Auteur Posté 11 Juillet 2005 bon aller pour une fois je vais tenter d'aller au bout... donc, j'appele la page à l'aide : http://luchenrard/siterobusto/photo-robusto.php?num=1 j'ai tenté en mettant le code ci dessous... effectivement le rapport d'erreur n'apparait plus... mais il ne prend toujours pas en compte la variable... <? error_reporting(0);$_GET['num']; echo"<title>Palissade robusto photo ".$num."</title>"; ?>
Luckyluk Posté 11 Juillet 2005 Auteur Posté 11 Juillet 2005 eviedemment, quand on recopie mal le code.... ça marche moins bien... j'ai donc simplement remis : $num=$_GET['num']; et non pas celui du post precedent....
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant