J' ai un souci avec une Session php [Résolu]

Signaler
Messages postés
30
Date d'inscription
jeudi 24 mars 2011
Statut
Membre
Dernière intervention
10 juin 2012
-
Messages postés
30
Date d'inscription
jeudi 24 mars 2011
Statut
Membre
Dernière intervention
10 juin 2012
-
Mon souci est le suivant, quand je clic sur le lien de la page index.php,
la session se créée sans aucun souci et je peux cliquer sur le lien de la page commande.php "Page2"
les variables s'affiche.
Alors que quand je clic sur un des liens clients de la page2.php,
La nouvelle session se créée bien, mais quand je clic sur "page 2" Les variable de sessions ne sont plus définis
Et là ben je ne comprend pas pourquoi.

Pouvez vous me donner un petit coup de main svp ?


Voici le code si dessous :

Page index.php
[Commande.php?id=1 Nouvelle Commande]


Page Commande.php
<?php session_start();
if(!isset($_SESSION['IdClient']) && !isset($_GET['id']))
{
echo "vous devez choisir un client pour passer une commande";
}
elseif(isset($_SESSION['IdClient']) && isset($_GET['id']))
{
echo "Il y a une session ouverte et un nouveau numero client envoye pour une commande";

if($_SESSION['IdClient']==$_GET['id'])
{
echo "
Le numero client et le numero client session sont les meme ".$_SESSION['IdClient'];
}
else
{
echo "
Le numero client et le numero client session ne sont pas les meme, Donc on doit effacer session et en creer une nouvelle";
session_unset();
session_destroy();

$_SESSION['IdClient']=$_GET['id'];
echo "
Nouvelle session creee : ".$_SESSION['IdClient'];
include('Numero_Facture.php');
include('Config.php');

$NumeroFactureVerif=1;
while($NumeroFactureVerif!=0)
{
$GenererNumFacture=Numero_Facture();
$Req=mysql_query("SELECT COUNT(*) AS id FROM factureclient WHERE numfacture='".$GenererNumFacture."'");
$Data=mysql_fetch_assoc($Req);

if($Data['id']!=0)
{
$NumeroFactureVerif=1;
}
else
{
$NumeroFactureVerif=0;
$_SESSION['NumeroFacture']=$GenererNumFacture;
}
}
echo "
Nouveau Numero Facture cree : ".$_SESSION['NumeroFacture'];
}
}
elseif(!isset($_SESSION['IdClient']) && isset($_GET['id']))
{
echo "Il n'y a pas de session, mais un numero client a ete envoye pour une commande";
$_SESSION['IdClient']=$_GET['id'];
echo "
 Session cree ".$_SESSION['IdClient'];
include('Numero_Facture.php');
include('Config.php');

$NumeroFactureVerif=1;
while($NumeroFactureVerif!=0)
{
$GenererNumFacture=Numero_Facture();
$Req=mysql_query("SELECT COUNT(*) AS id FROM factureclient WHERE numfacture='".$GenererNumFacture."'");
$Data=mysql_fetch_assoc($Req);

if($Data['id']!=0)
{
$NumeroFactureVerif=1;
}
else
{
$NumeroFactureVerif=0;
$_SESSION['NumeroFacture']=$GenererNumFacture;
}
}
echo "
Numero Facture cree : ".$_SESSION['NumeroFacture'];
}
else
{
echo "Session actuelle : ".$_SESSION['IdClient'];
echo "
Numero Facture actuel : ".$_SESSION['NumeroFacture'];
}
?>

[Page2.php Page 2]


Page Page2.php
<?php session_start();
echo "Session actuelle : ".$_SESSION['IdClient'];
echo "
Numero Facture actuel : ".$_SESSION['NumeroFacture'];
?>

[Commande.php Page 1]

[Commande.php?id=1 Nouveau client 1]

[Commande.php?id=2 Nouveau client 2]

2 réponses

Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
16
bonjour
as tu essayé
//session_unset();
//session_destroy();
je crois que ça sert à rien ici


Bonne programmation !
Messages postés
30
Date d'inscription
jeudi 24 mars 2011
Statut
Membre
Dernière intervention
10 juin 2012

Bonjour cod57,

Merci a toi, cela fonctionne a merveille.

Mais j aimerai comprendre pourquoi

A+