Rechercher : dans
Par :

Php session et cookie?

Dernière réponse le 19 avr 2009 à 03:15:18 pigeonus, le 19 avr 2009 à 01:05:21 
 Signaler ce message aux modérateurs

Bonjour,

Je suis en train de travailler sur un Projet php et je me demandais quelque chose. Je fais une sorte de mini site de e commerce et j'ai un problème de session.

Lorsque mon utilisateur se connecte, la session debute avec un session_start(); puis je fais un header vers ma page index.php. Si jamais je ne fais pas de header je vois bien que mes variables globales de type session fonctionne car je peux les afficher avec un echo. Cependant, après le header toute mes variables de sessions disparaissent.

Je pense avoir une idée, je n'ai pas fait de code pour créer un cookie.

Doit on absolument créer un cookie pour faire fonctionner les variables de session d'une page à l'autre?

Merci à vous.

Configuration: Windows XP
Firefox 3.0.8

Meilleures réponses pour « Php session et cookie? » dans :
PHP - Les cookies et les en-têtes HTTP Voir Les en-têtes HTTP Lors de chaque échange par le protocole HTTP entre votre navigateur et le serveur, des données dîtes d'en-têtes contenant des informations sur les données à envoyer (dans le cas d'une requête) ou envoyées (dans le cas d'une...
[PHP] Headers already sent by..... VoirLorsque vous utilisez une fonction PHP qui manipule les en-têtes HTTP comme par exemple: header() setcookie() session_start() Il est important d'utiliser ces fonctions avant d'avoir généré le moindre flux vers le client. A partir du moment où...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...

1

arthezius, le 19 avr 2009 à 02:05:04

Les cookies sont totalement indépendant des variables de session.

Les cookies peuvent être affiché n'importe quand n'importe où à partir du moment où celui-ci est enregistré et durant sa durée de validité.

Les sessions doivent d'abord être déclaré puis le code

session_start();

doit être mis sur toute les pages où les variables de session seront utilisés.
Il doit être mis en tout début de page. « La recherche commence là où s'arrête la connaissance. »

Répondre à arthezius

2

pigeonus, le 19 avr 2009 à 02:14:04

Bonjour arthezius,

Ok tu me rassures par rapport aux cookies. En faite quand je crées ma session tout va bien, je cree mes variables globale de session et leur donne des valeurs. Ca marche, je peux les afficher avec un echo.

Maintenant si après avoir fait tout ça je fais un header vers une autre page je perd toutes mes variables de session.

J'utilise wamp mais normalement ça doit pas poser de problème. Dans le dossier des sessions de wamp je vois bien le fichier qui se crée. Si quelqu'un a une idée je suis preneur.

Merci.

Répondre à pigeonus

3

arthezius, le 19 avr 2009 à 02:36:51
  • +1

Ben sur la page de destination, c'est a dire après le header, il faut que tu ai le code session_start() et tout sera bon ensuite normalement. « La recherche commence là où s'arrête la connaissance. »

Répondre à arthezius

4

pigeonus, le 19 avr 2009 à 02:38:23
  • +1

J'ai trouvé mon erreur.

En faite j'avais mis mon session_start(); uniquement dans mon ficher sur lequel pointe mon formulaire. Du coup, il chargeait pas les variables de session quand je revenais sur ma page d'index.

Répondre à pigeonus

5

arthezius, le 19 avr 2009 à 02:39:53

Oui c'est ce que je disais. :) « La recherche commence là où s'arrête la connaissance. »

Répondre à arthezius

6

pigeonus, le 19 avr 2009 à 02:40:09

Un grand merci à toi arthezius. Je viens de voir que tu m'as posté la réponse, je pensais pas que je devais mettre un session_start(); dans chacun de mes fichiers concernés.

Répondre à pigeonus

7

 arthezius, le 19 avr 2009 à 03:15:18

Ben de rien.
Oublie pas de mettre en résolu en haut. « La recherche commence là où s'arrête la connaissance. »

Répondre à arthezius