2011-08-06 3 views
0

J'ai un code qui crée des variables de session pour un utilisateur sur une page. Avant que les données soient saisies dans la base de données, elles vont à PayPal pour passer à la caisse et revenir sur le site. Quand ils reviennent ces variables de session créées pour l'utilisateur restent parfois et retournent parfois comme NULL.Variables de sessions parfois nulles, parfois non

L'utilisateur saisit ses informations crée des variables de session -> Aller à PayPal, la caisse -> Revenez sur le site, les variables de session sont parfois retenues d'entrer dans la base de données, parfois

Je ne peux pas comprendre pour la vie de mon pourquoi il le fait parfois et pas d'autres fois. Y at-il quelque chose à propos des sessions qui me manque? Des idées?

+0

Je ne pense pas que n'importe qui peut vous répondre à coup sûr sans connaître plus d'informations telles qu'une partie de votre code. comment avez-vous remarqué que vous n'avez pas enregistré, ou avez-vous vérifié si ça va dans db? si ce dernier, alors il pourrait être quelque chose d'autre comme l'échec de paypal ou le manuscrit. quelques autres possibilités: session expirée, session démarrée après l'envoi des en-têtes en raison d'un avertissement ou d'une erreur (vérifier les journaux d'erreurs), le cookie de session est associé uniquement à un sous-domaine spécifique. par exemple. l'utilisateur entre sur le site sans www. session. mais paypal mis à retourner à www. le cookie est restreint par sous-domaine. –

+0

dans le dernier cas, vérifiez les paramètres de cookie de session. Le meilleur moyen de le savoir, est de déboguer en enregistrant une session fictif dans un fichier, et de consigner l'URL, voir quand cela arrive dans quelles circonstances faites attention aux petits détails. –

+0

Se pourrait-il que les cookies de session soient désactivés? Est-ce que seuls les navigateurs spécifiques déclenchent l'erreur ou tous au hasard? – Mike

Répondre

2

Assurez-vous d'appeler le session_write_close() avant de rediriger vers Paypal.

+0

Vous, mon ami, êtes l'homme! Cela l'a réparé! Je me suis battu avec cela au cours des 3 derniers mois. Merci de votre aide! Pour tous ceux qui ont ce même problème, placez simplement session_write_close(); juste avant de diriger vers PayPal pour garder vos variables de session. Merci encore! – Jason

Questions connexes