Notice: Undefined offset: / index:

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Notice: Undefined offset: / index:

par finipe » 14 janv. 2007, 18:33

Problème résolu : je modifiais le fichier php.ini situé dans le répertoire "php" et non celui situé dans le répertoire "apache"

(à l'attention des neuneus comme moi qui pourraient rencontrer le même problème 8-))

par finipe » 14 janv. 2007, 15:02

Bonjour !

Désolé d'exhumer ce message, mais j'ai un problème similaire d'erreurs en cascade de notice après un changement d'ordi et une réinstallation de easyPHP... J'ai regardé le fichier php.ini, et la ligne error_reporting est bien la suivante : E_ALL & ~E_NOTICE

Cela peut-il venir d'autre part ? Aurais-je oublié quelque chose ?

Edition : au temps pour moi, j'ai résolu mon problème en ajoutant la ligne error_reporting(E_ALL ^ E_NOTICE); avant mon code. N'empêche, je me demande pourquoi ça n'a pas marché avec le php.ini...

par zeus » 07 juil. 2006, 09:30

Je voudrais bien appuyer la remarque de jobi1722
PS : Clair que le mieux est déclarer et de tester si les variables existent !!!
La solution qu'il t'a donné n'est qu'un camouflage. Les erreurs existent encore.

La solution la plus pérenne est celle de tester l'existence des indexs avant de réaliser le traitement.

par cpizzelli » 06 juil. 2006, 23:10

Merci à Zigz4g pour sa participation. Merci aussi à jobi1722, La fonction error reporting a "corrigé" mon PB
Bonne journée

par jobi1722 » 30 juin 2006, 19:31

Salut,

les problèmes d'undefined index !!! Quand on pense que php était bien car il n'était pas nécessaire de déclarer toutes les variables !!!!

Bonne solution le précédent post mais perso j'ai ajouté un petit
error_reporting(~E_NOTICE);
qui va bien :)

++


PS : Clair que le mieux est déclarer et de tester si les variables existent !!!

par zigz4g » 29 juin 2006, 10:31

Salut, tu peux utiliser isset($ta_variable) pour vérifier si la variable est bien initialisée.
for($i = 0; $i < count($info); $i++)
{
    if (isset($info[$i])) {
        $format_array[$i][0] = $info[$i]["printername"][0];
        $format_array[$i][1] = $info[$i]["location"][0];
        $format_array[$i][2] = $info[$i]["description"][0];
        $format_array[$i][3] = $info[$i]["portname"][0];
    }
} 
Si bien sur c'est ton $info qui pose problème, ce qu'il faut trouver par toi même. Tu peux utiliser ce bout de code pour voir le contenue de ton tableau avant de faire ta boucle et en comprendre le contenue :
echo '<pre>';print_r($info);echo '</pre><br />';

Notice: Undefined offset: / index:

par cpizzelli » 29 juin 2006, 09:31

Bonjour à tous,
J'ai un petit PB lors de l'execution de mon script PHP.
Il me dit:

Code : Tout sélectionner

Notice: Undefined index: description in d:\easyphp\www\aa\printers.php on line 52 Notice: Undefined index: location in d:\easyphp\www\aa\printers.php on line 51 Notice: Undefined offset: 81 in d:\easyphp\www\aa\printers.php on line 50 Notice: Undefined offset: 81 in d:\easyphp\www\aa\printers.php on line 51
J'ai pu localiser la source du problème, mais je n'arrive pas à l'éliminer.
Lors de l'execution du script, je me connecte à LDAP, j'extrait des infos et les listes dans un tableau.
Pour ce faire je charge une array. Apparemment lorsque un champs LDAP est vide, ben, il aime pas.
for($i=0; $i<count($info); $i++) 
{ 
$format_array[$i][0] = $info[$i]["printername"][0]; 
$format_array[$i][1] = $info[$i]["location"][0]; 
$format_array[$i][2] = $info[$i]["description"][0]; 
$format_array[$i][3] = $info[$i]["portname"][0]; 
} 
Si vous avez une idée...