Warning: Illegal string offset

Résolu
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   -  
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous !

Petite aide svp, ce code ci-dessous me revois l'erreur suivante :
Warning: Illegal string offset 'Rang' in header.php on line 74
<?php if($s_Rang == "Administrateur"){ ?>
Mon menu
<?php } elseif ($s_Rang['Rang'] == "RH") { ?> 
Mon menu
<?php } elseif ($s_Rang['Rang'] == "Henkel") { ?>
Mon menu
<?php }else echo "Une erreur s'est produite : Rang ".$s_Rang." !"; ?>


Or pendant la connexion, tout se passe bien, et si je me connecte en tant qu'Administrateur, ça passe, si je me met en RH ou autre ca ne passe plus...

J'ai essayé de faire ceci :
<?php if($s_Rang == "Administrateur"){ ?>
Mon menu
<?php }else echo "Une erreur s'est produite : Rang ".$s_Rang." !"; ?>

<?php if ($s_Rang['Rang'] == "RH") { ?> 
Mon menu
<?php }else echo "Une erreur s'est produite : Rang ".$s_Rang." !"; ?>

<?php if ($s_Rang['Rang'] == "Henkel") { ?>
Mon menu
<?php }else echo "Une erreur s'est produite : Rang ".$s_Rang." !"; ?>


Mais pareil, il me renvois la même erreur...

Cependant,
<?php }else echo "Une erreur s'est produite : Rang ".$s_Rang." !"; ?>
affiche bel et bien le rang de l'utilisateur...
et le print_r aussi m'affiche bel et bien le rang...

Pouvez-vous m'aiders vp ?

2 réponses

jeremy.s Messages postés 1226 Date d'inscription   Statut Membre Dernière intervention   79
 
Salut !

Attention au type de ta variable $s_Rang :
Dans tes if, tu utilise $s_Rang, et $s_Rang['Rang'].
$s_Rang est a priori un string, jusque la tout va bien, d'où le fait que ton premier if avec administrateur fonctionne.
Par contre, $s_Rang['Rang'] est un tableau associatif qui pointe vers la case du tableau nomé 'Rang'. Tu ne peux donc pas dire que ta variable st un string en la déclarant de tel, et ensuite la mettre dans un if en disant que c'est un tableau associatif !

4
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Punaise !
Oui tu as raison...
<?php } elseif ($s_Rang == "RH") { ?>
fonctionne.

Merci encore ^^
0