Code dauthentification en php
Résolu/Fermé
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
-
15 sept. 2009 à 13:55
le père - 16 sept. 2009 à 11:35
le père - 16 sept. 2009 à 11:35
A voir également:
- Code dauthentification en php
- Le code ascii en informatique - Guide
- Code puk bloqué - Guide
- Code telephone oublié - Guide
- Code activation windows 10 - Guide
- Code gta 4 ps4 - Guide
13 réponses
Bonjour
Il y a une branche de ton programme pour laquelle rien ne s'affiche : c'est le cas où $_POST['login'] ou $_POST['pwd'] ne sont pas définis.
Ça vient sans soute du formulaire, dont les champs ne s'appellent pas login et pwd, ou qui n'utilise pas la méthode POST
Peux-tu montrer le code du formulaire ?
Il y a une branche de ton programme pour laquelle rien ne s'affiche : c'est le cas où $_POST['login'] ou $_POST['pwd'] ne sont pas définis.
Ça vient sans soute du formulaire, dont les champs ne s'appellent pas login et pwd, ou qui n'utilise pas la méthode POST
Peux-tu montrer le code du formulaire ?
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
7
15 sept. 2009 à 16:06
15 sept. 2009 à 16:06
Ok voici le code du formulaire.
<form action="verif.php" method="post">
<table border="1" align="center">
<caption align="center">Identification</caption>
<tr align="left">
<td>Nom d'utilisateur</td>
<TD><input type="text" name="login" /></TD>
</tr>
<tr align="left">
<td>Mot de passe</td>
<td><input type="password" name="pwd" /></td>
</tr>
</table>
</form>
Merci pour tout ce que vous faites
<form action="verif.php" method="post">
<table border="1" align="center">
<caption align="center">Identification</caption>
<tr align="left">
<td>Nom d'utilisateur</td>
<TD><input type="text" name="login" /></TD>
</tr>
<tr align="left">
<td>Mot de passe</td>
<td><input type="password" name="pwd" /></td>
</tr>
</table>
</form>
Merci pour tout ce que vous faites
Comment fais-tu pour envoyer le formulaire ? Je ne vois pas de bouton submit.
Pour voir ce qui arrive vraiment dans ta page verif.php, ajoute dèle le début :
Pour voir ce qui arrive vraiment dans ta page verif.php, ajoute dèle le début :
<?php var_dump($_POST); ...
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
7
15 sept. 2009 à 16:51
15 sept. 2009 à 16:51
Merci. Je viens de trouvé les erreurs d'abord je n'ai pas pris la methode "post" je ne sais pas comment j'ai fais pour choisir "get" et aussi j'avais mal saisi le nom de table dans laquelle je devais enregistrer les données.
Merci beaucoup
Merci beaucoup
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
7
15 sept. 2009 à 17:11
15 sept. 2009 à 17:11
Excusez moi je veux egalement savoir un truc. Est-ce possible d'utiliser ses variables sur une autre pages?
Genre a pres identification je veux que le nom de la personne s'affiche sur la page sur laquelle elle va quoi. J'espere avoir été claire.
Merci encore
Genre a pres identification je veux que le nom de la personne s'affiche sur la page sur laquelle elle va quoi. J'espere avoir été claire.
Merci encore
Oui, c'est possible. Cela s'appelle les sessions. Il faut mettre au début de ton script un appel à la fonction session_start(). Ensuite, tu dispose d'un tableau $_SESSION (c'est une varibale prédéfinie en PHP) qui est transmis de page en page. Tu peux écrire tes valeurs dedans : $_SESSION['nom'] = $nom, $_SESSION['prenom'] = $prenom etc... et les récupérer dans une autre page (qui commence aussi avec session_start()) : $nom=$_SESSION['nom'] etc...
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
7
15 sept. 2009 à 18:07
15 sept. 2009 à 18:07
Alors dois mettre session_start ds php si oui je l'ai fais ça affiche même le nom comme voulu mais tout en haut de la page il'y a un message d'erreur je comprends pas
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\wamp\www\memoire\verif.php:8) in C:\wamp\www\memoire\verif.php on line 9
voic mon code de verif.php now:
<?php
session_start();
if (isset ($_POST['login']) AND isset ($_POST['pwd']))
{
if ($_POST['login'] != NULL AND $_POST['pwd'] != NULL)
{
$login=$_POST['login'];
$_SESSION['login']=$login;
$pwd=$_POST['pwd'];
$_SESSION['pwd']=$pwd;
include ('connexion.php');
$req= mysql_query ("SELECT * FROM connexion WHERE login='$login' AND pwd='$pwd'") or die('Erreur de connexion au serveur de base de données '.mysql_error());
$i= mysql_num_rows($req);
if ($i==1){include ('redaction.php');}
else {include ('identification.html');}
}
else {echo ("Aucun champs ne doit rester vide");}
mysql_close();
}
?>
Alors je fais quoi now?
Merci
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\wamp\www\memoire\verif.php:8) in C:\wamp\www\memoire\verif.php on line 9
voic mon code de verif.php now:
<?php
session_start();
if (isset ($_POST['login']) AND isset ($_POST['pwd']))
{
if ($_POST['login'] != NULL AND $_POST['pwd'] != NULL)
{
$login=$_POST['login'];
$_SESSION['login']=$login;
$pwd=$_POST['pwd'];
$_SESSION['pwd']=$pwd;
include ('connexion.php');
$req= mysql_query ("SELECT * FROM connexion WHERE login='$login' AND pwd='$pwd'") or die('Erreur de connexion au serveur de base de données '.mysql_error());
$i= mysql_num_rows($req);
if ($i==1){include ('redaction.php');}
else {include ('identification.html');}
}
else {echo ("Aucun champs ne doit rester vide");}
mysql_close();
}
?>
Alors je fais quoi now?
Merci
Le message d'erreur que tu indiques ne vient pas du code que tu montres.
D'après le message d'erreur, le session_start() est à la ligne 9, alors que dans ton script il est à la ligne 2.
Es-tu bien sûr que ce message d'erreur va avec ce script ?
D'après le message d'erreur, le session_start() est à la ligne 9, alors que dans ton script il est à la ligne 2.
Es-tu bien sûr que ce message d'erreur va avec ce script ?
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
7
16 sept. 2009 à 10:55
16 sept. 2009 à 10:55
Bonjour
Excusez moi voici le code complet que j'aurais du vous envoyer:
<!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>Document sans titre</title>
</head>
<body>
<?php
session_start();
if (isset ($_POST['login']) AND isset ($_POST['pwd']))
{
if ($_POST['login'] != NULL AND $_POST['pwd'] != NULL)
{
$login=$_POST['login'];
$_SESSION['login']=$login;
$pwd=$_POST['pwd'];
$_SESSION['pwd']=$pwd;
include ('connexion.php');
$req= mysql_query ("SELECT * FROM connexion WHERE login='$login' AND pwd='$pwd'") or die('Erreur de connexion a la base de données '.mysql_error());
$i= mysql_num_rows($req);
if ($i==1){include ('redaction.php');}
else {include ('identification.html');}
}
else {echo ("Aucun champs ne doit rester vide");}
mysql_close();
}
?>
</body>
</html>
Merci a bientot
Excusez moi voici le code complet que j'aurais du vous envoyer:
<!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>Document sans titre</title>
</head>
<body>
<?php
session_start();
if (isset ($_POST['login']) AND isset ($_POST['pwd']))
{
if ($_POST['login'] != NULL AND $_POST['pwd'] != NULL)
{
$login=$_POST['login'];
$_SESSION['login']=$login;
$pwd=$_POST['pwd'];
$_SESSION['pwd']=$pwd;
include ('connexion.php');
$req= mysql_query ("SELECT * FROM connexion WHERE login='$login' AND pwd='$pwd'") or die('Erreur de connexion a la base de données '.mysql_error());
$i= mysql_num_rows($req);
if ($i==1){include ('redaction.php');}
else {include ('identification.html');}
}
else {echo ("Aucun champs ne doit rester vide");}
mysql_close();
}
?>
</body>
</html>
Merci a bientot
Darkito
Messages postés
1191
Date d'inscription
vendredi 7 décembre 2007
Statut
Membre
Dernière intervention
26 mai 2010
545
16 sept. 2009 à 11:02
16 sept. 2009 à 11:02
Bonjour,
Fais attention a l'injection SQL aussi !
plus d'infos
Fais attention a l'injection SQL aussi !
plus d'infos
la fonction session_start doit être appelée avant tout envoi de données vers le client. Donc avant le <!DOCTYPE...
mais si tu utilises d'autres fonctions qui font appel aux en-têtes HTTP (envoi de cookies, redirection par "Location: "...) tu retrouveras le même problème plus loin
<?php session_start(); ?> <!DOCTYPE html PUBLIC etc...
mais si tu utilises d'autres fonctions qui font appel aux en-têtes HTTP (envoi de cookies, redirection par "Location: "...) tu retrouveras le même problème plus loin
bodry24
Messages postés
86
Date d'inscription
vendredi 21 août 2009
Statut
Membre
Dernière intervention
18 août 2014
7
16 sept. 2009 à 11:23
16 sept. 2009 à 11:23
Merci les amis ça marche maintenant. Je veux un conseil de professionel sur ceci. Est 'il bien de faire un formulaire en deux page s'il est grand ou doit -on toujours le faire sur une page.
Merci
Merci