URGENT / MYSQL/PHP

hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -  
graffx Messages postés 6506 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
voila j'ai beau reflechi pour savoir ce qui ne va pas dans mon code je n'arrive pas à me retrouve.
je veux qu'il m'affiche mon login et mon mot de pass(password)
voilà mes codes :

login.php
<?php
// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('coursphp', $base) ;

?>
<?php
// On définit un login et un mot de passe de base pour tester notre exemple. Cependant, vous pouvez très bien interroger votre base de données afin de savoir si le visiteur qui se connecte est bien membre de votre site
$login = "moi";
$pwd = "laddd";

// on teste si nos variables sont définies
if (isset($_POST['login']) && isset($_POST['password'])) {

// on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe
if ($login == $_POST['login'] && $pwd == $_POST['password']) {
// dans ce cas, tout est ok, on peut démarrer notre session

// on la démarre :)
session_start ();
// on enregistre les paramètres de notre visiteur comme variables de session ($login et $pwd) (notez bien que l'on utilise pas le $ pour enregistrer ces variables)
$_SESSION['login'] = $_POST['login'];
$_SESSION['password'] = $_POST['password'];

// on redirige notre visiteur vers une page de notre section membre
header ('location: page_membre.php');
}
else {
// Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait
echo '<body onLoad="alert(\'Membre non reconnu...\')">';
// puis on le redirige vers la page d'accueil
echo '<meta http-equiv="refresh" content="0;URL=formulaire.html">';
}
}
else {
echo 'Les variables du formulaire ne sont pas déclarées.';
}
?>



formulaire.html

<form action="login.php" method="post">
<div align="center"><strong>Login :</strong>
<input type="text" name="login">
<br />
<strong>Password</strong>:
<input type="password" name="pwd">
<br />
<input type="submit" value="Connexion">
</div>
</form>

veillez me depnnaner
A voir également:

16 réponses

resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
 
pour faire quoi ?
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
merci pour ta reponse rapide
c'est pourqu'il m'affiche la valeur des variables
c'est à dire le login et le password
je ne sais pas si j'arrive à mieux expliquer
donc mon souhait c'est de me montrer l'erreur ou ce qu'il faut faire
MERCI
0
resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
 
deja en 1er
session_start();
doit etre mis en 1ere ligne avant toute chose et pour les afficher bah tu fais echo $_SESSION['login'];
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
MERCI
je vais l'essayer
encore merci pour votre disponibilté
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
voilà je n'arrive pas jusqu' à present:
et puis voilà ce que j'ai fait


<?php
session_start ();
// on enregistre les paramètres de notre visiteur comme variables de session ($login et $pwd) (notez bien que l'on utilise pas le $ pour enregistrer ces variables)
$_SESSION['login'] = $_POST['login'];
$_SESSION['password'] = $_POST['password'];
?>
<?php
// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('coursphp', $base) ;

?>
<?php
// On définit un login et un mot de passe de base pour tester notre exemple. Cependant, vous pouvez très bien interroger votre base de données afin de savoir si le visiteur qui se connecte est bien membre de votre site
$login = "moi";
$pwd = "lemien";

// on teste si nos variables sont définies
if (isset($_POST['login']) && isset($_POST['password'])) {

// on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe
if ($login == $_POST['login'] && $pwd == $_POST['password']) {

echo 'Votre login est '.$_SESSION['login'].' et votre mot de passe est '.$_SESSION['password'].'.';


// on redirige notre visiteur vers une page de notre section membre
header ('location: page_membre.php');
}
else {
// Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait
echo '<body onLoad="alert(\'Membre non reconnu...\')">';
// puis on le redirige vers la page d'accueil
echo '<meta http-equiv="refresh" content="0;URL=formulaire.html">';
}
}
else {
echo 'Les variables du formulaire ne sont pas déclarées.';
}
?>




l'erreur qu'il m'affiche



Notice: Undefined index: login in C:\wamp\www\ESSAIPHP\login.php on line 21

Notice: Undefined index: password in C:\wamp\www\ESSAIPHP\login.php on line 22
Les variables du formulaire ne sont pas déclarées


MERCIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
0
resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
 
normal tu na pas declaré les variables de sessions
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
oui je n'arrive pas à commprendre
SVP si tu peux mieux me detailler et surtout à l'appuis d'un exemple
MERCI
0

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

Posez votre question
resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
 
ecoute tu dis que c'est urgent mais y te faut des heures pour repondre dsl chuis passé à autre chose
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
EXCUSE MOI
Y' a mon chef qui m'avait besoin de moi
Veillez m'excuser
je suis là pour apprendre surtout que je suis debutant

MERCI
0
Bjr
 
essaye de mettre :

$_SESSION['login'] = $_POST['login'];
$_SESSION['password'] = $_POST['password'];

dans tes deux if :
if (isset($_POST['login']) && isset($_POST['password'])) {
if ($login == $_POST['login'] && $pwd == $_POST['password']) {

ICI

}
}
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Merci je suis entrain de verifier
MERCI
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   > hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
voilà je vais vous envoyer ce code
j'ai tout simplifier pour qeu la tache me soit facile


voilà le code:
traitement.php

<?php
session_start ();
$_SESSION['login'] = $_POST['login'];
$_SESSION['password'] = $_POST['password'];
?>
<?php
// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('coursphp', $base) ;

?>

<?php

// on teste la déclaration de nos variables
if (isset($_POST['login']) && isset($_POST['password'])) {


if ($login == $_POST['login'] && $password == $_POST['password']) {
// on affiche nos résultats
echo 'Votre nom est '.$_POST['login'].' et votre fonction est '.$_POST['password'];
}
}
?>



pour le formulaire.html
<form action="traitement.php" method="post">
<div align="center"><strong>Login :</strong>
<input type="text" name="login">
<br />
<strong>Password</strong>:
<input type="password" name="pwd">
<br />
<input type="submit" value="Connexion">
</div>
</form>


ENCORE MERCI
0
Bjr
 
il y a une petite erreur : le nom de ton champs mot de passe est different de ce que tu cherches a récupérer.

tu a mis : <input type="password" name="pwd">
et tu essaies de récuperer : $_POST['password'];

J'ai aussi une question, est ce que tu as initialisé tes deux variables php : $login et $password.


Essaie de tester avec ca (le name du input à changé et le variable de session déplacée) :

<?php
// on démarre la session
session_start ();

// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('coursphp', $base) ;


// on teste la déclaration de nos variables
if (isset($_POST['login']) && isset($_POST['password'])) {
if ($login == $_POST['login'] && $password == $_POST['password']) {

$_SESSION['login'] = $_POST['login'];
$_SESSION['password'] = $_POST['password'];

// on affiche nos résultats
echo 'Votre nom est '.$_SESSION['login'].' et votre fonction est '.$_SESSION['password'];
}
}
?>



<form action="traitement.php" method="post">
<div align="center"><strong>Login :</strong>
<input type="text" name="login">
<br />
<strong>Password</strong>:
<input type="password" name="password">
<br />
<input type="submit" value="Connexion">
</div>
</form>
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
UN GRAND MERCI
mais il fallait que je supprime cette ligne:


if ($login == $_POST['login'] && $password == $_POST['password']) {


pouvez vous m'expliquer pourquoi???


encore merci

donc je vais essayer d'applique sur mon petit projet
pouvez vous m'autoriser de vous contacter en cas de besoin
???,
0
Bjr
 
En supprimant cette ligne tu ne fait plus de comparaison. Si ca fonctionne maintement c'est peut etre parceque les variables $login et $password n'était pas bien initialisée.

Essaie de l'appliquer à ton projet et si tu as d'autre problème poste sur CCM, et si je suis dans le coin j'essaierai d'y répondre ^^
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
OK MERCI
POUR VOTRE DISPONIBILITE
JE VOUS SUIS TRES RECONNAISSANT
DONC J4ATTAQUE MON PETIT PROJET


je vous envois un message en cas de probleme
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
je n'arrive pas à inserer dans ma base on me dit que y'a tjrs erreur.
Voila le code


essai.php
<?php
$connect=mysql_connect("localhost","root","");
$base=mysql_select_db("coursphp",$connect);
$sql= "select login, password from utilisateur";
$rep=mysql_query($sql) or die("erreur se produite lors de lancement de la requete");
$sql= 'INSERT INTO utilisateur VALUES("'.$_POST['login'].'","'.$_POST['password']'")';
$rep=mysql_query($sql) or die("erreur lors de l'insertion dans la base");

$login =$_POST['login'];
$password =$_POST['password'];
echo' votre Login est:'.$_POST['login'].' et Mot de pass est '.$_POST['password'].'';

?>

formulaire.html
<form action="essai.php" method="post">
<div align="center"><strong>Login :</strong>
<input type="text" name="login">
<br />
<strong>Password</strong>:
<input type="password" name="password">
<br />
<input type="submit" value="Connexion">
</div>
</form>
0
bjr
 
Tu peux collé l'erreur qui apparait ?

Et essaie comme ca :

<?php
$connect=mysql_connect("localhost","root","");
$base=mysql_select_db("coursphp",$connect);

$login =$_POST['login'];
$password =$_POST['password'];
echo' votre Login est:'.$_POST['login'].' et Mot de pass est '.$_POST['password'].'';

$sql= "select login, password from utilisateur";
$rep=mysql_query($sql) or die("erreur se produite lors de lancement de la requete");
$sql2= 'INSERT INTO utilisateur VALUES("'.$_POST['login'].'","'.$_POST['password']'")';
$rep2=mysql_query($sql2) or die("erreur lors de l'insertion dans la base");

?>
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
MERCI TU EST LA
VOILA LERREUR

Parse error: parse error in C:\wamp\www\ESSAIPHP\essai.php on line 23
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
j'attend toujours
le code ne passe pas tjrs
et ça affiche tjrs la meme erreur
0
bjr
 
parse erreur : généralement c'est qu'il y quelque chose de mal écrit.

tu peux montrer la ligne 23 et les lignes autours ?
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
veillez m'excuser pour ce retard
c'est la ligne 23

$sql2= 'INSERT INTO utilisateur VALUES("'.$_POST['login'].'","'.$_POST['password']'")';
0
giheller Messages postés 1882 Date d'inscription   Statut Membre Dernière intervention   142
 
bonsoir
il doit manquer un point après password]
$sql2= 'INSERT INTO utilisateur VALUES("'.$_POST['login'].'","'.$_POST['password'].'")';
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
oui cela ne passe pas jusqu' à present
j'ai mis le point mais j'ai tjrs la meme erreur
voilà le code:

<?php
$connect=mysql_connect("localhost","root","");
$base=mysql_select_db("coursphp",$connect);

$login =$_POST['login'];
$password =$_POST['password'];
echo' votre Login est:'.$_POST['login'].' et Mot de pass est '.$_POST['password'].'';
$sql1='INSERT INTO utilisateur("'.$_POST['login']'", "'.$_POST['password'].'")';
$rep1=mysql_query($sql1);
$sql= "select login, password from utilisateur";
$rep=mysql_query($sql) or die("erreur se produite lors de lancement de la requete");


?>
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   > hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
j'attend une reponse
SVP
0
bjr
 
j'ai l'impression que ta requete INSERT INTO est mal écrite.

C'est : INSERT INTO nomDeTaTable(champs1, champs2) VALUES('valeurs1', 'valeurs2')

<?php
$connect=mysql_connect("localhost","root","");
$base=mysql_select_db("coursphp",$connect);

$login =$_POST['login'];
$password =$_POST['password'];
echo ("votre Login est : ".$_POST['login']." et Mot de passe est : ".$_POST['password']);
$sql1="INSERT INTO utilisateur (login, password) VALUES ('".$_POST['login']."', '".$_POST['password']."')";
$rep1=mysql_query($sql1);
$sql= "select login, password from utilisateur";
$rep=mysql_query($sql) or die("erreur se produite lors de lancement de la requete");


?>
0
hamiddico Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
cela ne marche pas jusqu' present et tjrs la meme erreur
merci
0
graffx Messages postés 6506 Date d'inscription   Statut Contributeur Dernière intervention   1 975
 
ton formulaire, le champ password s' apelle "pwd" et tu met aprés $_POST['password'], ca ne peut pas coller, utilise le meme nom soit $_POST['pwd'].


Ensuite tu dosi le faire expres parce qu' on te dit qu' il manque un point apres password et tu nous remet la correction avec un point manquand cette fosi ci apres login


Bref ensuite tu fais des variables plus facile


$login =$_POST['login'];
$password =$_POST['password'];


et tu ne les utilsie pas dans ta requete


$sql1="INSERT INTO utilisateur (login, password) VALUES ('".$_POST['login']."', '".$_POST['password']."')";

alors moi je dis:


$login =$_POST['login'];
$password =$_POST['pwd]; // -> si ton champs de formulaire password s' apelle name="pwd"
echo ("votre Login est : ' . $login . ' et Mot de passe est : '. $password ' .);
$sql1="INSERT INTO utilisateur (login, password) VALUES ('$login', '$password')";
$rep1=mysql_query($sql1);
$sql= "select login, password from utilisateur"; // -> ca fout quoi la ca?
$rep=mysql_query($sql) or die("erreur se produite lors de lancement de la requete");


y a encore deux trois choses a revoir, mais ca devrait s' inserer en bdd


sinon il faut un minimum de bases quand meme


https://openclassrooms.com/fr/
0