Notice à la *** que j'arrive pas à enlever ! - PHP - Programmation
Marsh Posté le 14-11-2003 à 16:53:25
ben ça veut dire ce que ça veut dire, tu n'as pas d'offest qui s'appelle 'id_article'.
Faudrait voir à arrêter de prendre la mauvaise habitude de croire que le fait qu'une variable ne soit pas défini est équivalent à ce qu'elle soit nulle.
Marsh Posté le 14-11-2003 à 16:53:56
Ca veut dire que isset($article[$i]['id_article']) = false.
Soit l'indice $i de $article n'existe pas, soit l'indice id_article de $article[$i] n'existe pas. Peut être même que c'est $article qui n'existe pas, j'ai pas vérifié ça.
Marsh Posté le 14-11-2003 à 17:30:05
Il y une méthode qui consiste a éditer le fichier php.ini mais ya -t -il possibilté d'inclure un petit code ds le script qui les désactive?Merci
Marsh Posté le 14-11-2003 à 17:58:31
Ne les enlève pas. Chaque notice est une faille potentielle.
Marsh Posté le 14-11-2003 à 18:26:37
Zut, moi, jarrives pas a les activer.
J'avais "error_reporting = E_ALL & ~E_NOTICE"
je l'ai passé en "error_reporting = E_ALL" et j'ai redémarer apache mais ca change rien.
Marsh Posté le 14-11-2003 à 18:28:25
t'as bien modifier la ligne effective? pas celle mise en commentaire?
Marsh Posté le 14-11-2003 à 18:33:13
Oui, à première vue c'est bien ça que j'ai fait.
Tout à coup, je me demandes si j'ai bien le php.ini dans le bon répertoire.
Bon, je viens de tester et c'est ça.
J'avais mis le php.ini dans le même répertoire que le fichier php.exe (jr suis sous win) alors que c'était dans le même répertoire qu'apache qu'il était pris en compte. Une erreur bête quoi.
Marsh Posté le 14-11-2003 à 22:03:59
Bon je viens à bout peu à peu de mes notices...
Citation : |
On en accumule des mauvaises habitudes en programmant depuis 2 ans sans activer les notices
Marsh Posté le 15-11-2003 à 21:54:22
@if($article[$i]['id_article'] != "" ) { //si article existe
:]
Marsh Posté le 16-11-2003 à 17:47:32
Je connaissais pas, ca peut servir en effet !
Mais sinon, ayé, j'ai du en virer 95%, soit env une centaine
Marsh Posté le 14-11-2003 à 16:41:40
Jusqu'alors, j'avais la version 1.6 de easyPHP qui désactivait par défaut les notices (j'ignorais leur existence en fait), et je viens d'installer la version 2.0 d'easyPHP et j'ai tout d'un coup pas mal de notice en tout genre, dont celle-ci :
Notice: Undefined offset: 4 in d:\siteweb\monsite\caffichage.php on line 533
A la ligne 533, on trouve :
if($article[$i]['id_article'] != "" ) { //si article existe
Alors avant de me prendre trop la tête pour savoir ce qu'il entend par Undefined offset, j'aimerais avoir vos lumières !