Rechercher : dans
Par :

Authentification LOGIN + MOT DE PASSE - PHP

Dernière réponse le 10 oct 2008 à 10:30:11 cedrad33, le 10 jun 2008 à 22:42:18 
 Signaler ce message aux modérateurs

Bonjour à tous,

j'ai un formulaire qui abouti sur une page PHP mais qui pose des soucis de connexion avec lesquelles je n'arrives pas à identifier le problème.

Le script est celui ci :

<?php

mysql_connect("mon site","mon login","mon mot de passe")
or die("Connexion au serveur impossible");
mysql_select_db("Membre")
or die("Sélection de la base impossible");

if( empty($_POST["login"])) {echo "Le nom d'utilisateur n'est pas renseigné<br><br>";
}
if( empty($_POST["password"])) {echo "<br>Vous avez oubliez d'insérer votre mot de passe<br>";
}

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

$sql = "select * FROM Membre WHERE PseudoMembre = '".$login."' AND PasswordMembre = '".$password."' ;";

$req =mysql_query($sql, Membre);

if ($req == null )
{echo "<BR>connexion impossible<BR><br> Nom d'utilisateur et / ou mot de passe incorrect <br><br>";

} else
{echo "<br>Bonjour<br> ".$login;

}

?>


Mais il fonctionne pas et je ne sais pas pourquoi...

Pouvez - vous m'aider??

Je vous remercie infiniment, par avance, de votre aide.

Configuration: Windows XP
Internet Explorer 6.0

Meilleures réponses pour « Authentification LOGIN + MOT DE PASSE PHP » dans :
Modifier son mot de passe Yahoo VoirRendez-vous sur Yahoo, Cliquez sur S'identifier, Entrez votre adresse mail ainsi que votre mot de passe, puis cliquez sur Ouvrir une session. Placez votre curseur sur "Bonjour, Nom_d'utilisateur", Cliquez sur Configurer mon compte, Entrez à...
Comment changer mon mot de passe sous WLM/MSN VoirPour changer son mot de passe Windows Live Messenger, il suffit d'utiliser l'interface prévue à cet effet : http://memberservicesnet.passport.net/memberservice.srf?lc=1036 Si vous avez perdu votre mot de passe, merci de vous référer à...
[MSN] Mot de passe perdu VoirVous avez perdu ou oublié votre mot de passe d'accès à un service MSN ou Hotmail ? Vous êtes dans l'un de ces trois cas : 1er cas : Vous avez oublié votre mot de passe mais connaissez la réponse à la question secrète et/ou vous avez une...
Mots de passe VoirLes mots de passe Lors de la connexion à un système informatique, celui-ci demande la plupart du temps un identifiant (en anglais login ou username) et un mot de passe (en anglais password) pour y accéder. Ce couple identifiant/mot de passe forme...

1

lewis34, le 10 jun 2008 à 22:49:15

Bonsoir ,rapidement ,

j'immagine que toutes les variables post fonctionnent (pense à mettre des echos pour voir si elles sont bien recupérée)

essaye comme ça

$req =mysql_query($sql, Membre);

if (!$req)
{
echo "connexion impossible<br /><br /> Nom d'utilisateur et / ou mot de passe incorrect <br /><br />";
} 
else
{
echo "Bonjour".$login;

} 


le ! signifie si la req $req est fausse==>alors sinon on continue

Répondre à lewis34

2

cedrad33, le 11 jun 2008 à 13:27:23

Bonjour à tous,

et merci lewis34 de ton aide, mais mon problème vient de ma requete.

Je fais un autre script pour pouvoir voir si ma requete était bonne, elle est toujours fausse et je comprends pas pourquoi

Voici le script

<?php

mysql_connect("mon site","mon login","mon mot de passe")
or die("Connexion au serveur impossible");
mysql_select_db("Membre")
or die("Sélection de la base impossible");

if( empty($_POST["login"])) {echo "Le nom d'utilisateur n'est pas renseigné<br><br>";
}
if( empty($_POST["password"])) {echo "<br>Vous avez oubliez d'insérer votre mot de passe<br>";
}

$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = .$_POST[login]. ;";
$sqlb = "SELECT PasswordMembre FROM Membre WHERE PasswordMembre = .$_POST[password]. ;";

$conna = mysql_query($sqla);
$connb = mysql_query($sqlb);


if (!$conna && !$connb)

{echo "$_POST[login]"."$_POST[password]";
}

?>

A chaque fois que je l'éxécute, ca me donne faux, et donc affiche le nom d'utilisateur et le mot de passe.

Merci par avance de votre aide.

Répondre à cedrad33

3

redlifebig, le 11 jun 2008 à 13:34:36

Remplace tes requêtes par ça

$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = ".$_POST[login]." ;";
$sqlb = "SELECT PasswordMembre FROM Membre WHERE PasswordMembre = ".$_POST[password]." ;";

Répondre à redlifebig

4

cedrad33, le 11 jun 2008 à 14:59:57
  • +1

Bonjour redlifebig,

Je te remercie du temps que tu m'as accordé, mais j'ai remplacé tel que tu me la dis, mais j'obtiens toujours le même résultat.

....

Script (modifié) :

<?php

mysql_connect("mon site","mon login","mon mot de passe")
or die("Connexion au serveur impossible");
mysql_select_db("Membre")
or die("Sélection de la base impossible");

if( empty($_POST["login"])) {echo "Le nom d'utilisateur n'est pas renseigné<br><br>";
}
if( empty($_POST["password"])) {echo "<br>Vous avez oubliez d'insérer votre mot de passe<br>";
}

$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = ".$_POST[login]." ;";
$sqlb = "SELECT PasswordMembre FROM Membre WHERE PasswordMembre = ".$_POST[password]." ;";

$conna = mysql_query($sqla);
$connb = mysql_query($sqlb);


if (!$conna && !$connb)

{echo "$_POST[login]"."$_POST[password]";
}

?>

...

Répondre à cedrad33

5

lewis34, le 11 jun 2008 à 15:10:29

Re au lieu de ca

$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = ".$_POST[login]." ;";
$sqlb = "SELECT PasswordMembre FROM Membre WHERE PasswordMembre = ".$_POST[password]." ;";

essaye ça


$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = ".$_POST[login]." ;
$sqlb = "SELECT PasswordMembre FROM Membre WHERE PasswordMembre = ".$_POST[password]." ;

Répondre à lewis34

6

cedrad33, le 11 jun 2008 à 15:25:56

Bonjour lewis34, si j'essaie ca, il y'aura un problème de guillemets, il en manquera un forcément et ca va faire une erreur de variable...

Non??

Répondre à cedrad33

7

lewis34, le 11 jun 2008 à 15:29:03

Ben non... sauf que j'ai oublié un truc ^^^^

$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = ".$_POST[login]." ";

tu avais un ; entrop

Répondre à lewis34

8

cedrad33, le 11 jun 2008 à 15:38:00

Merci, j'ai essayé, toujours le même résultat, la connexion ne se fait pas. je ne comprends rien, la requête est pourtant exacte mais il n'accepte pas la connexion.

Script :

<?php

mysql_connect("mon site","mon login","mot de passe")
or die("Connexion au serveur impossible");
mysql_select_db("Membre")
or die("Sélection de la base impossible");

if( empty($_POST["login"])) {echo "Le nom d'utilisateur n'est pas renseigné<br><br>";
}
if( empty($_POST["password"])) {echo "<br>Vous avez oubliez d'insérer votre mot de passe<br>";
}

$sqla = "SELECT PseudoMembre FROM Membre WHERE PseudoMembre = ".$_POST[login]."" ;
$sqlb = "SELECT PasswordMembre FROM Membre WHERE PasswordMembre = ".$_POST[password]."" ;

$conna = mysql_query($sqla);
$connb = mysql_query($sqlb);


if (!$conna && !$connb)

{echo "$_POST[login]"."$_POST[password]";
}

?>

Répondre à cedrad33

9

lewis34, le 11 jun 2008 à 17:22:12

Re qu'est que ca te met comme msg d'erreur ?


Connexion au serveur impossible
ou
Sélection de la base impossible

tu est sur ,je suppose de tes identifiants de connnexions ?

Répondre à lewis34

10

meynoucha, le 11 jun 2008 à 17:39:35

Essaye de faire comme ça


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

$sql = "select * FROM Membre WHERE PseudoMembre = '".$login."' AND PasswordMembre = '".$password."' ;";

$req =mysql_query($sql, Membre);

while ($test0 = mysql_fetch_row($req) )

{

if ($test0 == null )
{echo "<BR>connexion impossible<BR><br> Nom d'utilisateur et / ou mot de passe incorrect <br><br>";

} else
{echo "<br>Bonjour<br> ".$login;

}
}

Répondre à meynoucha

11

cedrad33, le 11 jun 2008 à 19:04:25

Bonjour à tous, je vous remercie de votre contribution a tous.

Tout d'abord, je souhaite remercié, Lewis34, mais les messages d'erreurs n'étaient aucun des deux, car mes identifiants étaient 100% exacts.

D'autre part, je souhaite remercié meynoucha, ton script marche a merveille.
Mais j'aurai autre chose a te demandé, est ce que tu pourrais m'expliquer les differentes ligne de ton script car je ne comprend pas tout.

Si ca ne te déranges pas, car l'important n'est seulement que ca fonctionne, mais c'est aussi de comprendre.

Si tu ve on peut en parlé sur msn ce qui sera plus simple.


Bonne journée a tous et encore merci

Répondre à cedrad33

12

meynoucha, le 11 jun 2008 à 19:15:11

Bonjour cedrad33, peut etre il faut que tu regarde ce tutoriel:
http://www.infres.enst.fr/~danzart/mysql/php.phtml

Répondre à meynoucha

13

cedrad33, le 11 jun 2008 à 19:38:24

Merci beaucoup meynoucha :-) bonne fin de journée.

Répondre à cedrad33

14

ju0123456789, le 9 oct 2008 à 17:41:40

Bonjour, j'ai un probleme avec le code ci-dessus que j'ai essayé de transformer en plateforme ODBC au lieu de MySQL

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

$sql = "select * FROM Membre WHERE PseudoMembre = '".$login."' AND PasswordMembre = '".$password."' ;";

$req =mysql_query($sql, Membre);

while ($test0 = mysql_fetch_row($req) )

{

if ($test0 == null )
{echo "<BR>connexion impossible<BR><br> Nom d'utilisateur et / ou mot de passe incorrect <br><br>";

} else
{echo "<br>Bonjour<br> ".$login;

}
}
/code

Ce code ne marche pas pour moi, c'est sûrement dû a fait que je n'utilise pas du MySQL mais moi c'est une plateforme ODBC

Warning: odbc_exec(): supplied argument is not a valid ODBC-Link resource in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 12

Warning: odbc_fetch_row(): supplied argument is not a valid ODBC result resource in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 14

Pouvez vous m'aidez svp ?
Merci

Répondre à ju0123456789

15

lewis34, le 9 oct 2008 à 22:44:31

Bonsoir je pense pas que le probleme vienne du fait que tu utilise odbc (en general ça fonctionne)

modifie plutot ta requete

$sql = "select tonchamp1, tonchamp2,tonchamp3, etc... FROM Membre WHERE PseudoMembre = '".$login."' AND PasswordMembre = '".$password."' ;";

$req =mysql_query($sql);
list($tonchamp1, $tonchamp2,$tonchamp3, etc...) = mysql_fetch_array($req);
//ensuite ton traitement

Répondre à lewis34

16

merci, le 10 oct 2008 à 02:22:54

Elle est bien cette form...
j'ai BAC+4 en informatique système et multimédia, si ya qlq qui a un probleme il peut m envoyé un mail sur l'email: ayedmaouia@yahoo.fr

Répondre à merci

17

 ju0123456789, le 10 oct 2008 à 10:30:11

Bonjour,

<?php

$_SESSION['langage'] = 'PHP 5'; 
include_once("../../fonctions-panier.php");

$connect=ODBC_connect("TESTPHP5","sa","sasa");


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

$sql = "select login,password FROM utilisateur WHERE login = '".$login."' AND password = '".$password."' ;"; 

$req =ODBC_exec($sql); 
list($login, $password) = ODBC_fetch_array($req); 

while ($test0 = odbc_fetch_row($req) ) 

{ 

if ($test0 == null ) 
{echo "<BR>connexion impossible<BR><br> Nom d'utilisateur et / ou mot de passe incorrect <br><br>"; 

} else 
{echo "<br>Bonjour<br> ".$login; 

} 
} 


?>code>

ça me marque toujours un probleme

Warning: Wrong parameter count for odbc_exec() in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 14

Warning: odbc_fetch_array(): supplied argument is not a valid ODBC result resource in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 15

Warning: odbc_fetch_row(): supplied argument is not a valid ODBC result resource in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 17

Voilà ce qui se passe quand je renter les données en ODBC.

Et en mysql :

<code><?php

$_SESSION['langage'] = 'PHP 5'; 
include_once("../../fonctions-panier.php");

$connect=ODBC_connect("TESTPHP5","sa","sasa");


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

$sql = "select login,password FROM utilisateur WHERE login = '".$login."' AND password = '".$password."' ;"; 

$req =mysql_query($sql); 
list($login, $password) = mysql_fetch_array($req); 

while ($test0 = mysql_fetch_row($req) ) 

{ 

if ($test0 == null ) 
{echo "<BR>connexion impossible<BR><br> Nom d'utilisateur et / ou mot de passe incorrect <br><br>"; 

} else 
{echo "<br>Bonjour<br> ".$login; 

} 
} 


?>


ça me met :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 15

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\Programmes\wampserver2.0c\www\html\paiement\login.php on line 17


:(

Merci

Répondre à ju0123456789