Probleme avec mon code php
Résolu
turboooo
Messages postés
50
Date d'inscription
Statut
Membre
Dernière intervention
-
turboooo Messages postés 50 Date d'inscription Statut Membre Dernière intervention -
turboooo Messages postés 50 Date d'inscription Statut Membre Dernière intervention -
bonjour ;
en faite je suis débutant en php et j'ai voulu faire un espace membre bon l'inscription dans la base marche mais quand je veux faire l'authentification ca marche pas je vais mettre mes code et puis je vais dire au fur et a mesure les messages d'erreur qui s'affiche sachant que j'utilise easyphp 1.8
inscription.php
<?php
$info='';
if (isset ($_POST['valider']))
{
$login = $_POST['log1'];
$password = $_POST['pass1'];
$confirm_pass = $_POST['confir1'];
$nom=$_POST['nom1'];
$prenom =$_POST['pren1'];
$email=$_POST['email1'];
// Si l'un des champs est vide, lancer une erreur
if (empty ($login) || empty($password) || empty($confirm_pass)|| empty($nom) || empty($prenom) || empty($email))
{
$info = 'Veuillez renseigner tous les champs';
}
if ($password != $confirm_pass) {
$erreur = 'Les 2 mots de passe sont différents.';
echo 'les deux mots de passes sont differents';
}
else
{
$hostname_connexion = "localhost";
$database_connexion = "didact";
$username_connexion = "root";
$password_connexion = "";
global $connexion;
$connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_connexion, $connexion);
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','$login','$password','$nom','$prenom','$email')";
if (mysql_query($query))
{
echo 'mihaw';
$info = 'L"inscription a été créé avec succès';
}
else
{
echo'nono';
$info = 'Erreur lors de la l"inscription';
}
}
}
?>
<html>
<head>
<title>Inscription</title>
</head>
<body>
Inscription à l'espace etudiant :<br />
<form action="inscription.php" method="post" enctype="multipart/form-data">
<p>login : <br /><input type="text" name="log1"/></p>
<p>password : <br /><input type="password" name="pass1" /><p>
<p>confirmer votre password: <br /><input type="password" name="confir1" /><p>
<p> Nom : <br/><input type= "text" name="nom1" /><p>
<p> Prenom :<br/> <input type="text" name="pren1"/><p>
<p> email :<br/> <input type"=text" name="email1" /><p>
<input name="valider" type="submit" value="Valider" />
</form>
</body>
</html>
bon ca marche pas de probleme voici maintenant
index.php
<?php
if (isset($_POST['connexion']))
$login = $_POST['log1'];
$password = $_POST['pass1'];
if (!empty ($login) || !empty($password))
{
$hostname_connexion = "localhost";
$database_connexion = "didact";
$username_connexion = "root";
$password_connexion = "";
global $connexion;
$connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_connexion, $connexion);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM etudiant WHERE login_etud="'.mysql_escape_string($_POST[
'log1']).'" AND password="'.mysql_escape_string(md5($_POST['pass1'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'etudiant est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['log1'];
header('Location: membre.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login,soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes
identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
?>
<html>
<head>
<title>Accueil</title>
</head>
<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
<p>Login :<br/> <input type="text" name="log1" /><p>
<p>Mot de passe : <br/><input type="password" name= "pass1" /><p>
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="inscription.php">Vous inscrire</a>
</body>
</html>
bon quand j'execute ce code il m'affiche ce message :
Notice: Undefined index: pass1 in c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\index.php on line 4
il ya un probleme dans la ligne 4 de fichier index bon quand j'essaye de l'ignore et j'
essaye faire la connexion bon ca marche pas et le message disparaisse et il apparaisse le formulaire de l'inscription vide
bon je vous montre aussi le fichier membre .php
membre.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo htmlentities(trim($_SESSION['login'])); ?> !<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
j'attends votre aide et
merci d'avance pour votre aide
en faite je suis débutant en php et j'ai voulu faire un espace membre bon l'inscription dans la base marche mais quand je veux faire l'authentification ca marche pas je vais mettre mes code et puis je vais dire au fur et a mesure les messages d'erreur qui s'affiche sachant que j'utilise easyphp 1.8
inscription.php
<?php
$info='';
if (isset ($_POST['valider']))
{
$login = $_POST['log1'];
$password = $_POST['pass1'];
$confirm_pass = $_POST['confir1'];
$nom=$_POST['nom1'];
$prenom =$_POST['pren1'];
$email=$_POST['email1'];
// Si l'un des champs est vide, lancer une erreur
if (empty ($login) || empty($password) || empty($confirm_pass)|| empty($nom) || empty($prenom) || empty($email))
{
$info = 'Veuillez renseigner tous les champs';
}
if ($password != $confirm_pass) {
$erreur = 'Les 2 mots de passe sont différents.';
echo 'les deux mots de passes sont differents';
}
else
{
$hostname_connexion = "localhost";
$database_connexion = "didact";
$username_connexion = "root";
$password_connexion = "";
global $connexion;
$connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_connexion, $connexion);
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','$login','$password','$nom','$prenom','$email')";
if (mysql_query($query))
{
echo 'mihaw';
$info = 'L"inscription a été créé avec succès';
}
else
{
echo'nono';
$info = 'Erreur lors de la l"inscription';
}
}
}
?>
<html>
<head>
<title>Inscription</title>
</head>
<body>
Inscription à l'espace etudiant :<br />
<form action="inscription.php" method="post" enctype="multipart/form-data">
<p>login : <br /><input type="text" name="log1"/></p>
<p>password : <br /><input type="password" name="pass1" /><p>
<p>confirmer votre password: <br /><input type="password" name="confir1" /><p>
<p> Nom : <br/><input type= "text" name="nom1" /><p>
<p> Prenom :<br/> <input type="text" name="pren1"/><p>
<p> email :<br/> <input type"=text" name="email1" /><p>
<input name="valider" type="submit" value="Valider" />
</form>
</body>
</html>
bon ca marche pas de probleme voici maintenant
index.php
<?php
if (isset($_POST['connexion']))
$login = $_POST['log1'];
$password = $_POST['pass1'];
if (!empty ($login) || !empty($password))
{
$hostname_connexion = "localhost";
$database_connexion = "didact";
$username_connexion = "root";
$password_connexion = "";
global $connexion;
$connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_connexion, $connexion);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM etudiant WHERE login_etud="'.mysql_escape_string($_POST[
'log1']).'" AND password="'.mysql_escape_string(md5($_POST['pass1'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'etudiant est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['log1'];
header('Location: membre.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login,soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes
identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
?>
<html>
<head>
<title>Accueil</title>
</head>
<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
<p>Login :<br/> <input type="text" name="log1" /><p>
<p>Mot de passe : <br/><input type="password" name= "pass1" /><p>
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="inscription.php">Vous inscrire</a>
</body>
</html>
bon quand j'execute ce code il m'affiche ce message :
Notice: Undefined index: pass1 in c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\index.php on line 4
il ya un probleme dans la ligne 4 de fichier index bon quand j'essaye de l'ignore et j'
essaye faire la connexion bon ca marche pas et le message disparaisse et il apparaisse le formulaire de l'inscription vide
bon je vous montre aussi le fichier membre .php
membre.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo htmlentities(trim($_SESSION['login'])); ?> !<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
j'attends votre aide et
merci d'avance pour votre aide
A voir également:
- Probleme avec mon code php
- Code ascii - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code blocks - Télécharger - Langages
12 réponses
une correction pour index.php
<?php if (isset($_POST['connexion'])) { //il te manquait cette { $login = $_POST['log1']; $password = $_POST['pass1']; if (!empty ($login) || !empty($password)) { $hostname_connexion = "localhost"; $database_connexion = "didact"; $username_connexion = "root"; $password_connexion = ""; //global $connexion; // non c'est inutile //ensuite pourquoi utiliset mysql_pconnect ? mysql_connect suffit $connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR); mysql_select_db($database_connexion, $connexion); // on teste si une entrée de la base contient ce couple login / pass $sql = 'SELECT count(*) FROM etudiant WHERE login_etud="'.mysql_escape_string($login).'" AND password="'.mysql_escape_string(md5($password)).'"'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req); mysql_free_result($req); mysql_close($connexion); // si on obtient une réponse, alors l'etudiant est un membre if ($data[0] == 1) { session_start(); $_SESSION['login'] = $_POST['log1']; header('Location: membre.php'); exit(); } // si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login,soit dans son mot de passe elseif ($data[0] == 0) { $erreur = 'Compte non reconnu.'; } // sinon, alors la, il y a un gros problème :) else { $erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.'; } } else { $erreur = 'Au moins un des champs est vide.'; } }//il te manquait cette } //et tu en fait quoi de $erreur ? ?> <html> <head> <title>Accueil</title> </head> <body> Connexion à l'espace membre :<br /> <form action="index.php" method="post"> <p>Login :<br/> <input type="text" name="log1" /><p> <p>Mot de passe : <br/><input type="password" name= "pass1" /><p> <?php if(isset($erreur) && $erreur!="") {echo '<p><font color="red">'.$erreur.'</font></p>';} ?> <input type="submit" name="connexion" value="Connexion"> </form> <a href="inscription.php">Vous inscrire</a> </body> </html>
Effectivement, bien joué à Alain !
Mais dans ton script d'inscription, tu ne crypte pas le mot de passe alors que tu le fais dans le script d'identification.
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','$login','$password','$nom','$prenom','$email')";
à transformer donc en :
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','$login','". md5($password)."','$nom','$prenom','$email')";
Mais dans ton script d'inscription, tu ne crypte pas le mot de passe alors que tu le fais dans le script d'identification.
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','$login','$password','$nom','$prenom','$email')";
à transformer donc en :
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','$login','". md5($password)."','$nom','$prenom','$email')";
bon les amis j'ai fais ce que Alain m'a dit
et aussi ce que SamuHELL aussi mais apres la correction de requête bon il me dit une errerur parse : Parse error: parse error, expecting '','' or '';''
svp les amis vous faché pas car vraiment je connais pas bien le php et j'ai commencer a utiliser l'autre semain je l'ai etudier tout seul c'est pour ca je sen que mes faute sont bete mais je connais pas comment faire
merci
et aussi ce que SamuHELL aussi mais apres la correction de requête bon il me dit une errerur parse : Parse error: parse error, expecting '','' or '';''
svp les amis vous faché pas car vraiment je connais pas bien le php et j'ai commencer a utiliser l'autre semain je l'ai etudier tout seul c'est pour ca je sen que mes faute sont bete mais je connais pas comment faire
merci
Salut,
Sans rentrer dans le code et en regardant rapidement, je pense qu'il manque au moins l'accolade ouvrante { sur ton 1er if du fichier index.php :
if (isset($_POST['connexion'])) {
Essayes de la rajouter, tu n'auras plus cette erreur là normalement.
Sans rentrer dans le code et en regardant rapidement, je pense qu'il manque au moins l'accolade ouvrante { sur ton 1er if du fichier index.php :
if (isset($_POST['connexion'])) {
Essayes de la rajouter, tu n'auras plus cette erreur là normalement.
merci mon ami ca a marché y'a plus le message mais le pb de connexion marche pas
quand j'essaye fair la connexion ca marche pas est ce que tu peut m'aidé a trouvé le pb
je repete quand j'essaye de faire connexion et je clique sur le couton connexion rien ne se passe a part que les formulaire devient vide merci autre fois
quand j'essaye fair la connexion ca marche pas est ce que tu peut m'aidé a trouvé le pb
je repete quand j'essaye de faire connexion et je clique sur le couton connexion rien ne se passe a part que les formulaire devient vide merci autre fois
essayes comme ça:
et attention il faut que les champs entre les parentheses etudiant(...) et VALUES (....) soient dans le même ordre !
$query = "INSERT INTO etudiant(ID_etu,password,nom,prenom_etu,login_etud,email_etu) VALUES ('','". md5($password)."','".$nom."','".$prenom."','".$login."','".$email."')";
et attention il faut que les champs entre les parentheses etudiant(...) et VALUES (....) soient dans le même ordre !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
A priori la solution de Alain_42 ou de SamuHell devrait fonctionner.
Est-tu sûr que ton erreur : Parse error: parse error, expecting '','' or '';'' vient de la ligne de la requête INSERT ??
Cette erreur peut venir de "n'importe quelle ligne", il suffit que tu ai oublié un ; ou une ( ) ou une { } ou une ' ou un " ou autre... quelque-part et tu auras cette erreur là donc vérifie bien tout ton code!! Surtout les parties où tu as modifié le code!
Fais un 'couper' des lignes où tu penses que l'erreur se trouve (afin de la retirer du code), sauvegarde et regarde si tu as toujours l'erreur! Si tu as toujours l'erreur, c'est que l'erreur n'est pas dans la partie que tu as retirée, si tu n'as plus l'erreur (tu en auras peut-être une autre car tu as retiré du code! ^^), tu sauras que l'erreur est bien dans la partie que tu pensais! :D
Ensuite reste plus qu'à la passer au peigne fin! ^^
Est-tu sûr que ton erreur : Parse error: parse error, expecting '','' or '';'' vient de la ligne de la requête INSERT ??
Cette erreur peut venir de "n'importe quelle ligne", il suffit que tu ai oublié un ; ou une ( ) ou une { } ou une ' ou un " ou autre... quelque-part et tu auras cette erreur là donc vérifie bien tout ton code!! Surtout les parties où tu as modifié le code!
Fais un 'couper' des lignes où tu penses que l'erreur se trouve (afin de la retirer du code), sauvegarde et regarde si tu as toujours l'erreur! Si tu as toujours l'erreur, c'est que l'erreur n'est pas dans la partie que tu as retirée, si tu n'as plus l'erreur (tu en auras peut-être une autre car tu as retiré du code! ^^), tu sauras que l'erreur est bien dans la partie que tu pensais! :D
Ensuite reste plus qu'à la passer au peigne fin! ^^
Compte non reconnu.
pourtant je susi sur que le login et le mdp sont ds la base
oui mais le mdp n'est peut être pas crypté comme avant tu faisait ton INSERT san scrypter le mdp
pourtant je susi sur que le login et le mdp sont ds la base
oui mais le mdp n'est peut être pas crypté comme avant tu faisait ton INSERT san scrypter le mdp
j'ai supprimer le cryptage
je clic sur connexion et la il me vient trois erreur les voila
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at index.php on line 28
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\index.php:17) in index.php on line 28
Warning: Cannot modify header information - headers already sent by (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\index.php:17) in index.php on line 30
bon voila les ligne de 27 jusqua 32
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['log1'];
header('Location: membre.php');
exit();
}
merci une autre fois
je clic sur connexion et la il me vient trois erreur les voila
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at index.php on line 28
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\index.php:17) in index.php on line 28
Warning: Cannot modify header information - headers already sent by (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\index.php:17) in index.php on line 30
bon voila les ligne de 27 jusqua 32
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['log1'];
header('Location: membre.php');
exit();
}
merci une autre fois
Si tu arrives à cette ligne c'est que tu as bien trouvé un login et m d p correspondant donc il y a déja un mieux
verifies que tu n'as pas de ligne vide avant <?php tout au début de ton script
si tu as notepad++ comme editeur verifies que le format est bien en UNIX
menu Format "convertir en UNIX" doit être grisé
verifies que tu n'as pas de ligne vide avant <?php tout au début de ton script
si tu as notepad++ comme editeur verifies que le format est bien en UNIX
menu Format "convertir en UNIX" doit être grisé
alors regarde dans les parametres ou preferences de dream si tu n'as pas un truc pour codifier en format UNIX (ca joue sur les caracteres de fin de ligne)
c a dire to pb c'est qu'il y a un caratere avant la ligne28 qui est envoyé au navigateur et en regardant ton code on ne voit rien, et qd il y a comme ça des trucs inexpliqués cela vient souvent d'un problème de codage
essayes de télécharger Notepad++ et tu ouvrira ton code dedans
essayes de télécharger Notepad++ et tu ouvrira ton code dedans
Peux-tu mettre le code de la ligne 1 à 32 plutôt car a priori le problème vient de la ligne 17?
Comme la dit Alain_42 : si un caractère est envoyé au navigateur et qu'ensuite tu essayes de modifier le header, c'est trop tard tu ne peux plus le modifier... (enfin d'après ce que j'ai compris! ^^).
Donc soit, à la ligne 17, il y a un echo ou autre, soit le problème est celui auquel pense Alain_42 avec le format.
Ps: Tu modifies le header lorsque tu utilises :
-> $_SESSION['']
-> header('');
Comme la dit Alain_42 : si un caractère est envoyé au navigateur et qu'ensuite tu essayes de modifier le header, c'est trop tard tu ne peux plus le modifier... (enfin d'après ce que j'ai compris! ^^).
Donc soit, à la ligne 17, il y a un echo ou autre, soit le problème est celui auquel pense Alain_42 avec le format.
Ps: Tu modifies le header lorsque tu utilises :
-> $_SESSION['']
-> header('');
bon aloison j'ai supprimé les echo ds le code deja moi je mets des echo pour savoir ou est la faute et ca a avancé maintenant il a passe au fichier membre et il ya un pb le voila
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at membre.php:7) in \membre.php on line 8
sacher bien qu il m'affiche bien venu et deconexion donc ca a marche presque je vais vous donner le script de membre .php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo htmlentities(trim($_SESSION['login'])); ?> !<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
et bien le ligne 8 c'est session_start()
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at membre.php:7) in \membre.php on line 8
sacher bien qu il m'affiche bien venu et deconexion donc ca a marche presque je vais vous donner le script de membre .php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: index.php');
exit();
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo htmlentities(trim($_SESSION['login'])); ?> !<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html>
et bien le ligne 8 c'est session_start()
bon les amis quand je clique sur déconnexion en ignorant le worning il m'affiche aussi des worning
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php:9) in c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php on line 10
Warning: Cannot modify header information - headers already sent by (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php:9) in c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php on line 13
voici le code deconexion.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<?php
session_start();
session_unset();
session_destroy();
header('Location: index.php');
exit();
?>
</body>
</html>
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php:9) in c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php on line 10
Warning: Cannot modify header information - headers already sent by (output started at c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php:9) in c:\program files (x86)\easyphp1-8\www\didacticiel\fat\yes\deconnexion.php on line 13
voici le code deconexion.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<?php
session_start();
session_unset();
session_destroy();
header('Location: index.php');
exit();
?>
</body>
</html>
ou essayes de modifier la ligne:
$connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
par
$connexion = mysql_pconnect($hostname_connexion, $username_connexion, $password_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
par
$connexion = mysql_connect($hostname_connexion, $username_connexion, $password_connexion) or die ("Erreur connexion :".mysql_error());