[php] problème avec les sessions et variables

Fermé
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 - 28 avril 2006 à 14:42
PhP Messages postés 1767 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 7 mai 2006 à 14:34
--
C'est bizarre, on en apprend tous les jours même quand on ne s'informe pas !!!!
Bonjour
Voici mon petit problème :
J'ai fais un code php qui permet au visiteur de ce connecté après inscription :
<?session_start();?>
<? $_post['pseudo']=$_session['pseudo'];?>
<? $pseudo=$_POST['pseudo']; $passe=$_POST['passe'];?>


<? $dbc = @mysql_connect ("localhost", "freeon_freeon", "***********");

if(!mysql_errno($dbc)) {
mysql_select_db("freeon_freeonthecity");

$query = "
SELECT * FROM v2 WHERE
pseudo='$pseudo' AND
passe='$passe'";
$result = mysql_query($query);
if(mysql_num_rows($result)==0)
{
header("Location:http://www.freeonthecity.com/form_erreur.php"); } else{?> <html> <center> <strong> <marquee> www.freeonthecity.com -espace membre </marquee> </strong> </center> <br> <center> <strong> Bienvenue, tu es maintenant connecté et reconnu comme un touriste de la ville gratuite (free on the city)! <br> Pour télécharger des sonneries gratuites (rap rnb), <a href="http://www.freeonthecity.com/les_sonneries.php">clique ici</A> <br> Merci d'être passé, n'hésite pas à revenir souvent... </html> <?} }
mysql_close(); ?>

si le pseudo et le mot de passe précédament remplis dans un formulaire sont juste alors on est dans le premier { là ou il y a tout le html} si c'est faut {on r'envois vers une page d'erreur...
Là pas de problème...
Mais si tout est bon et que le visiteur est connecté dans le html, il faut qu'il puisse cliquer sur la page "sonneries" sans se réidentifier mais voila mon problème même en mettant correctement les session dans la page "les_sonneries.php" c'est le echo "pas bons !" et non le echo "bon" qui apparait.
Voici le code de la page les_sonneries.php :
<?session_start();?>
<? $pseudo=$_session['pseudo'];?>

<? if ( isset($pseudo))
$pseudo=$_session['pseudo'];
if ($pseudo)
{ echo "bons !";} else{ echo "pas bons !";} ?>
D'où viens le problème?
merci
A voir également:

3 réponses

xloadx Messages postés 28 Date d'inscription samedi 15 mai 2004 Statut Membre Dernière intervention 10 septembre 2011 7
28 avril 2006 à 21:34
Attention à ton code en PHP on construit une page comme tel:


<?
session_start();
$truc = $_SESSION['truc'];

if($truc){ echo 'Ok c bon !!!!'; }
else{ echo'Ce n'est pas bon !!!'; }

?>
0
fabrice11901 Messages postés 787 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 12 juillet 2007 64
28 avril 2006 à 22:00
Bonsoir,
Sa ne marche toujours pas j'obtiens toujours le message comme quoi ce n'est pas bon...
Voici maintenant le code de les_sonneries.php :
<?session_start();?>
<? $pseudo=$_session['pseudo'];

if ($pseudo)
{ echo "bons !";} else{ echo "pas bons !";} ?>
Alors, que faire? Sa ne vient pas du fichier php qui lui cré la session avant de r'envoyer vers la page "les_sonneries.php"?
merci
0
PhP Messages postés 1767 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
7 mai 2006 à 14:34
Bjr

ben oui c'est normal nulle part tu ne sauves ta variables $pseudo dans la session

Voici comment faire

La page qui vérifie ta connexion :

<?php
session_start(); 
$pseudo=$_POST['pseudo']; 
$passe=$_POST['passe'];

// Retire $pseudo de la session si la variable est défini
if (isset($_SESSION["pseudo"])
{
  unset($_SESSION["pseudo"]);
}


//  <-- Ici vérif avec MySQL 

if(mysql_num_rows($result)==0) 
{ 
  header("Location:http://www.freeonthecity.com/form_erreur.php"); 
} 
else
{ 
// Définit la variable dans la session
$_SESSION["pseudo"] = $pseudo;

//  <-- Ici la suite de ton code
}
?>

Et voilà !
0