URGENT / MYSQL/PHP

Fermé
hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009 - 15 juil. 2009 à 14:08
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 - 16 juil. 2009 à 22:59
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

16 réponses

resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
15 juil. 2009 à 14:10
pour faire quoi ?
0
hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 14:22
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 vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
15 juil. 2009 à 14:25
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 14:31
MERCI
je vais l'essayer
encore merci pour votre disponibilté
0
hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 14:49
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 vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
15 juil. 2009 à 15:04
normal tu na pas declaré les variables de sessions
0
hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 16:26
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 vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
15 juil. 2009 à 16:29
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 16:32
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
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 16:44
Merci je suis entrain de verifier
MERCI
0
hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009 > hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 16:50
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
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 17:15
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
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
15 juil. 2009 à 17:52
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 17:08
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
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 17:21
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 17:34
j'attend toujours
le code ne passe pas tjrs
et ça affiche tjrs la meme erreur
0
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 18:47
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 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
16 juil. 2009 à 19:05
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 19:21
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009 > hamiddico Messages postés 30 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 19:49
j'attend une reponse
SVP
0
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 mardi 21 avril 2009 Statut Membre Dernière intervention 16 juillet 2009
16 juil. 2009 à 21:31
cela ne marche pas jusqu' present et tjrs la meme erreur
merci
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 973
16 juil. 2009 à 22:59
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