$_get et $_session

youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006 - 16 mars 2006 à 16:18
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006 - 17 mars 2006 à 09:57
Voila, j'ai un probleme dans mon site, lorsqu'un utilisateur se connecte je passe son pseudo dans l'url (par un $_get) mais j'utilise aussi des $_session, malheureusement je viens de remarquer que le $_get me faisait perdre mes $_session. Serait ce incompatible ? Merci de me répondre que fautil faire ?

17 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2006 à 16:28
Non ça ne l'est pas.
et c'est $_GET et $_SESSION, hein.

Peut poser problème si tu utilises le même index :
$_GET['login']
$_SESSION['login']
par exemple, et que ton php.ini est mal configuré, à savoir que tu es en register_global à On.
Faut le mettre à Off.
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 16:35
Oui je mais bien en majuscule les $_ erreur e frappe désolé. je vais essayer de voir le php.ini
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 16:39
register_global est bien sur off
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2006 à 16:45
Alors fais voir un bout de code, il doit y avoir un problème dedans.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 16:51
<?
session_start();
$_SESSION['cpt']="1";
$_SESSION['oeildroit']="0";
$_SESSION['oeilgauche']="0";
$_SESSION['oeildroitpres']="0";
$_SESSION['oeilgauchepres']="0";
function url($url)
{
if(isset($_GET['NOM']) && strpos($url, 'NOM=')===false)
{
if(strpos($url, '?')===false)
{
$url.='?NOM='.$_GET['NOM'];
}
else
{
$url.='&NOM='.$_GET['NOM'];
}
}
return $url;
}


?>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2006 à 17:00
ok, et sur ce code, quel est le problème exactement ?
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 17:01
tous les $_SESSION se vide et après j'ai le message

Notice: Undefined index: cpt in c:\program files\easyphp1-8\www\site eye-technology\lettreres456c.php on line 18
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2006 à 17:03
Oui mais pas sur cette partir du code, tu ne les affiches ou ne les utilises pas ici, tu ne fais que remplir des variables de session.
Montre le code où ça plante, plutôt.
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 17:07
ok désolé je suis long a la détente ;-)
Voila ou sa plante

<?
function url($url)
{
if(isset($_GET['NOM']) && strpos($url, 'NOM=')===false)
{
if(strpos($url, '?')===false)
{
$url.='?NOM='.$_GET['NOM'];
}
else
{
$url.='&NOM='.$_GET['NOM'];
}
}
return $url;
}
session_start();
$_SESSION['cpt'];
$_SESSION['oeildroit'];
$_SESSION['oeilgauche'];
if($_SESSION['cpt']=="1")
{
$_SESSION['oeildroit']="5/10";
$_SESSION['cpt']="2";
}
else
{
if($_SESSION['cpt']=="2")
{
$_SESSION['oeilgauche']="5/10";
$_SESSION['cpt']="3";
}
}
?>
mes variables sont vides surtout la cpt mais quand j'enleve le get dans l'url plus de probleme
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2006 à 17:12
Lol ok...

Vire ça déjà :

$_SESSION['cpt'];
$_SESSION['oeildroit'];
$_SESSION['oeilgauche'];

Ca ne sert absolument à rien. Et ça va planter.
Ensuite :

session_start();
if (isset ($_SESSION['cpt'])) {
if($_SESSION['cpt']=="1")
{
$_SESSION['oeildroit']="5/10";
$_SESSION['cpt']="2";
}
else
{
if($_SESSION['cpt']=="2")
{
$_SESSION['oeilgauche']="5/10";
$_SESSION['cpt']="3";
}
}
}
?>
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 17:26
je fais se que tu m'as dit mais j'ai fait un test pour voir si je perd ma session et elle est bien perdu, le $_SESSION['cpt'] n'existe plus.
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2006 à 17:32
T'as oublié un session_start () quelque part alors, ce n'est pas possible.
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 17:38
après plusieurs férification j'ai bien un session_start() sur toutes les pages vu, ca commence a m'énerver ce php lol meme si c'est bien util.
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
16 mars 2006 à 17:40
n'empeche heureusement que malalam est la pour essayer de m'aider, merci a toi, on va y arrivé
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
17 mars 2006 à 09:38
personne n'arrive a trouvé une solution
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
17 mars 2006 à 09:48
Tu dois virer tes variables quelquepart : tu ne peux pas avoir de conflits entre ces 2 tableaux si tu n'as pas register_globals à On, donc bon...difficile de t'aider plus.
0
youyou_2004 Messages postés 26 Date d'inscription mercredi 22 juin 2005 Statut Membre Dernière intervention 17 mars 2006
17 mars 2006 à 09:57
ok merci
0
Rejoignez-nous