2009-09-03 7 views
0

Comment puis-je faire quelque chose comme ceci ci-dessous fonctionne?Comment puis-je afficher des éléments de tableau de session dans PHP

<?PHP 

$_SESSION['signup_errors']['test1']; 
$_SESSION['signup_errors']['test2']; 
$_SESSION['signup_errors']['test3']; 
$_SESSION['signup_errors']['test4']; 

foreach ($_SESSION['signup_errors'] as $key => &$value) { 
    echo $value; 
} 
?> 

Attention: Invalid argument supplied for foreach()

Répondre

2

Ahh je l'ai eu, je n'avais pas les valeurs définies dans cet exemple.

1

Vous êtes assez proche, mais vos lignes d'installation n'attribuent aucune valeur.

$_SESSION['signup_errors']['test1'] = 'value1'; 
0

Cela signifie que vous n'avez pas attribué $_SESSION['signup_errors'] une valeur, ce qui signifie qu'il n'y avait pas d'erreurs, je suppose. Vous devez mettre la ligne suivante au-dessus du code de vérification d'erreur:

$_SESSION['signup_errors'] = array(); 
0

Puisque vous n'êtes pas assignez en fait des valeurs aux éléments du tableau de la session dans cette partie du code, $ _SESSION n'est pas retourné comme un tableau, donc le foreach reçoit une variable vide et lance une erreur. Si vous voyez le message d'erreur "Argument invalide fourni pour foreach()" et que vous savez que la session contient des valeurs que vous avez définies, assurez-vous que la session est démarrée, en utilisant la commande php session_start();

alors vous serez en mesure de faire une boucle dans la matrice de session et voir la clé & leurs valeurs

Questions connexes