2009-12-08 3 views
0

Je travaille sur le code suivant dans fichier1sessions PHP passant des valeurs par des décalages

$_SESSION['manu']="hello"; 
$_SESSION[0]=$msg; 
$_SESSION[1]=$msg1; 
for($arr=0;$arr<sizeof($msg2);$arr++) 
    $_SESSION[$arr+2]=$msg2[$arr]; 
$_SESSION[++$arr]=$msg3; 
$_SESSION[++$arr]=$file_name; 

Dans le fichier 2

echo sizeof($_SESSION); 
for($arr=0;$arr<sizeof($_SESSION);$arr++) 
    echo $_SESSION[$arr]; 
echo $_SESSION['manu']; 

Cependant la session sizeof vient d'être 1 à fichier2 et toute ma session les valeurs stockées dans des formulaires offset sont perdues?

+0

Qu'est-ce que vous essayez d'atteindre ? –

Répondre

1

Les noms des éléments du tableau $_SESSION sont soumis aux mêmes limitations que les variables PHP normales: ils ne peuvent pas commencer par un nombre et doivent commencer par une lettre ou un trait de soulignement. Donc, l'utilisation de nombres en tant qu'élément de session n'est pas permise. C'est pourquoi vous les perdez dans la transition.
(. Si vous aviez des rapports d'erreur activée, vous auriez obtenu un avis d'erreur)

Plutôt que de faire:

$_SESSION[0] = $msg; 
$_SESSION[1] = $msg1; 

Essayez:

$_SESSION['msg'][0] = $msg; 
$_SESSION['msg'][1] = $msg1; 
+0

j'ai remarqué les erreurs – manugupt1

1

Avez-vous mis session_start() quelque part au-dessus de votre fichier? Ajoutez-le au cas où il n'y en a pas.

+0

oui .. j'ai fait le problème se trouve ailleurs car il montre parfaitement une session énumérée $ _SESSION ['manu']; – manugupt1

+0

+1. Vous ne pouvez même pas imaginer combien de fois ai-je fait ceci: p –