Erreur Notice: Undefined index

Résolu/Fermé
LaChaux78 Messages postés 564 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 31 mars 2023 - 27 avril 2018 à 23:14
LaChaux78 Messages postés 564 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 31 mars 2023 - 28 avril 2018 à 10:52
Bonjour,
Un petit sooucis j'ai cette erreur en fait j'hésite à désactiver les erreurs des Notices c'est dommage mais bon.....
J'ai essayé de faire un isset mais ca ne le fait pas.
Pouvez-vous m'aider s'ils vous plait.
Merci
Notice: Undefined index: a in...

$action = 'new';               
if($_GET['a']) { $a = $_GET['a']; } 
if(isset($_GET['idclas'])) { $idclas = $_GET['idclas']; }

switch($a) {
	case 'new': $action = 'new';  break; 
	case 'ls' : $action = 'list'; break;
	case 'mod': $action = 'mod';  break;
	default   : $action = 'new';  break;
}
A voir également:

3 réponses

jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
27 avril 2018 à 23:26
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 330
27 avril 2018 à 23:27
Déjà remplace
if($_GET['a'])
par
if(isset($_GET['a']))

De plus, tes 2 variables, si les paramètres GET ne sont pas définit, ne sont jamais initialisées, cela te générera un avertissement aussi.

Ajoute juste :
$a=...;
$idclas=...;

avec des valeurs par défaut cohérentes.
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
28 avril 2018 à 00:08
Plus simple...
Comme indiqué dans le lien que j'ai donné, l'écriture ternaire simplifie l'initialisation des variables.

$a = !empty($_GET['a']) ? $_GET['a'] : NULL;
$idclas = !empty($_GET['idclas'] ? $_GET['idclas'] : NULL;
0
LaChaux78 Messages postés 564 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 31 mars 2023 32
28 avril 2018 à 10:52
Bonjour
Je te remercie.
Cordialement.
0