Erreur Notice: Undefined index

Résolu
LaChaux78 Messages postés 585 Date d'inscription   Statut Membre Dernière intervention   -  
LaChaux78 Messages postés 585 Date d'inscription   Statut Membre Dernière intervention   -
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;
}

3 réponses

  1. NHenry Messages postés 15235 Date d'inscription   Statut Modérateur Dernière intervention   387
     
    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
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       
      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
  2. LaChaux78 Messages postés 585 Date d'inscription   Statut Membre Dernière intervention   32
     
    Bonjour
    Je te remercie.
    Cordialement.
    0