Résolu Problème session_start

Solutions (7)
Tags :
  • MySQL
  • Programmation
|
Je dois rendre dans 15jours un site avec un panier et là je suis occupé avec le login.
Et j'ai un soucis.Il y a un problème que je n'arrive pas à résoudre. Je vous montre mon code puis ce que j'ai comme résultat..svp aidez moi!!!

<html>
<head>
<title>Index</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h4 align="center">Gestions de sessions</h4>

<?php session_start();

$host="localhost";
$user="root";
$pass="";
$connexion=mysql_connect("$host","$user","$pass") or Die ("Erreur de connexion");
$mabase = "info";
$testbase = mysql_select_db("$mabase",$connexion) or Die ("Base inexistante");
$table="client";

if(isset($_POST['nom']))
{$nom=strtoupper($_POST['nom']);}
else
{$nom=null;}
if(isset($_POST['prenom']))
{$prenom=strtoupper($_POST['prenom']);}
else
{$prenom=null;}
$req="SELECT * FROM $table WHERE nom like '".$nom."';";
$resultat= mysql_query($req);
$val=mysql_fetch_array($resultat);
if(($nom==$val["NOM"])&&($prenom==$val["PRENOM"]))
{
$_SESSION['NOM'] = $nom && $_SESSION['PRENOM'] = $prenom;
if($val["priorite"]=="1")
{
?>
<html>
<head>
<title>Gestion de sessions</title>
</head>
<body>
<A HREF="page2.php">Client</A>
</body>
</html>
<?php
}
else
{
?>
<html>
<head>
<title>Gestion de sessions</title>
</head>
<body>
<A HREF="page3.php">Administrateur</A>
</body>
</html>
<?php
}
}
else
{
if(isset($_POST['cmdok']))
{echo"<FONT COLOR=\"#FFOOOO\">Mot de passe erroné /FONT>"; }
?>
<html>
<head>
<title>Gestion de sessions</title>
</head>
<body>
from method="post" action="<?php $_SERVER['PHP_SELF'];?>">
table width="80%" boder="0">
<tr><td width="23%">Login</td>
<td width="77%"> input name="nom" type="text" size="20" maxlength="20">
</td><input name="prenom" type="password" size="20" maxlength="20"> </td>
</tr>
<tr>
<td colspan="2"><input name="cmdok" "type="submit" value="Envoyer"></td>
</tr></table></form>
<?php
}
?>
</body>
</html>

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\sitephp\winnie\examphp\session.php:8) in c:\sitephp\winnie\examphp\session.php on line 8


Administrateur(est un lien vers une autre page)
Contenus similaires
Meilleure solution
partage
|
met session_start(); avant tout code html, soit :

<?php
session_start();
?>
<html>
<head>
...
  • Commenter cette solution |
Score
0
òh
òi
|
Merci pour l'aide..j'ai trouvé
  • Commenter cette réponse |
Score
0
òh
òi
|
Essaye de débboger.
Dans toute tes conditions tu met un petit message du genre
<?php echo "[DEBUG] ta_variable = ' . $ta_variable .' "; ?>
Tu devrais trouver.
Affiche bien toutes tes variables que tu envoie via le formulaire et celle avec qui tu compare.

EDIT :
Je pense que ça viens de cette condition :

{
if (isset($_POST['cmdok']))
{echo"<FONT COLOR=\"#FF0000\">Mot de passe erroné</FONT>"; }

Dès que tu envoie ton formulaire, tu fais un $_POST['cmdok], donc il y rentre forcement ...
  • Commenter cette réponse |
Score
0
òh
òi
|
J'ai d'autre soucis et un copain qui fait la même chose que moi à le même soucis
peu importe ce qu'on rentre..correct ou non, on reçoit le message qui dit: mot de passe erroné. Pourriez vous m'aider.

<?php
session_start();
$connexion = mysql_connect("localhost","root","");
$mabase = "info";
$testbase = mysql_select_db($mabase);
$latable = "client";
if(isset($_POST['txtid']))
{$id=strtoupper($_POST['txtid']);}
else
{$id=null;}
if(isset($_POST['txtmdp']))
{$mdp=strtoupper($_POST['txtmdp']);}
else
{$mdp=null;}
$req = "SELECT * FROM $latable WHERE nom like '%".$id."%';";
$resultat = mysql_query($req);
$val = mysql_fetch_array($resultat);
if (($id==$val["nom"]) && ($mdp==$val["prenom"]))
{
$_SESSION['nom'] = $id;
$_SESSION['prenom'] = $mdp;
if ($val["priorite"]=="1")
{
?>
<html>
<head>
<title>Gestion de sessions</title>
</head>
<body>
<ul>
<li><a href="consultation.php">Consultation</a></li>
<li><a href="vente.php">Vente</a></li>
<ul>
</body>
</html>
<?php
}
else
{
?>
<html>
<head>
<title>Gestion de sessions</title>
</head>
<body>
<ul>
<li><a href="achat.php">Achat</a></li>
<li><a href="vente.php">Vente</a></li>
<li><a href="consultation.php">Consultation</a></li>
<li><a href="statistique.php">Statistique des ventes</a></li>
<ul>
</body>
</html>
<?php
}
}
else
{
if (isset($_POST['cmdok']))
{echo"<FONT COLOR=\"#FF0000\">Mot de passe erroné</FONT>"; }
?>
<html>
<head>
<title>Gestion de sessions</title>
</head>
<body>
<form method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<table width="80%" border="0">
<tr><td width="23%">Login</td>
<td width="77%"><input name="txtid" type="text" size="20" maxlength="20">
</td></tr><tr><td>Mot de passe</td>
<td><input name="txtmdp" type="password" size="20" maxlength="20" ></td>
</tr>
<tr>
<td colspan="2"><input name="cmdok" type="submit" value="Envoyer"></td>
</tr></table></form>
<?php
}
?>
</body>
</html>
  • Commenter cette réponse |
Score
0
òh
òi
|
Merci je ne savais pas.
  • Commenter cette réponse |
Score
0
òh
òi
|
Merci de creer un seul sujet par probleme, et de continuer tes soucis dans cette discussion sans en créer de nouvelle. Elles sont effacées.
  • Commenter cette réponse |
Score
0
òh
òi
|
Ca marche..merci

Mais j'ai toujours le soucis que ma page client n'apparait pas et que ma page administrateur est bien là...
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS