Menu
Donnez votre avis

PHP - Notice : Undefined index

Posez votre question



Si vous utilisez des tableaux comme les variables $_POST, $_GET, $_SESSION, $_COOKIE ..., il se peut que vous tombiez sur cette erreur:
Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line 'ligne en cours'


Pour eviter cette erreur il suffit de tester si ce champs du tableau a été initialisé avec la fonction isset() ou !empty()


De plus Il est préférable de récupérer "proprement" les variables AVANT de les utiliser.
Pour se faire, nous pouvons utiliser l'écriture ternaire (sorte de if):
//avec ISSET
//Si la variable $_POST['truc'] existe, alors $truc = $_POST['truc']  sinon elle vaut NULL 
$truc = isset($_POST['truc']) ? $_POST['truc'] : NULL;

//ou avec !EMPTY() 
//Si la variable $_POST['truc'] existe et n'est pas vide, alors $truc = $_POST['truc']  sinon elle vaut NULL 
$truc = !empty($_POST['truc']) ? $_POST['truc'] : NULL;




Ce type d'erreur est reporté ou pas selon la configuration du serveur.
Il n'est pas reporté par défaut car c'est le type d'erreur le moins important, correspondant à la constante E_NOTICE.

On peut modifier les types d'erreurs reportés avec la fonction error_reporting.
Jean-François Pillou

Cet article est régulièrement mis à jour par des experts sous la direction de Jean-François Pillou, fondateur de CommentCaMarche et directeur délégué au développement numérique du groupe Figaro.

En savoir plus sur l'équipe CCM

A voir également

Publié par kilian. Dernière mise à jour le 24 mai 2016 à 16:31 par noctambule28.

Ce document intitulé «  PHP - Notice : Undefined index  » issu de CommentCaMarche (https://www.commentcamarche.net/) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Ajouter un commentaire

Commentaires

Commenter la réponse de Utilisateur anonyme