cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010
-
17 janv. 2007 à 09:47
Flachy Joe
Messages postés2103Date d'inscriptionjeudi 16 septembre 2004StatutMembreDernière intervention21 novembre 2023
-
18 janv. 2007 à 19:53
Miss1
J'ai crée une base de donnée ds laquel j'ai entré un mot de passe et un login admin. l'inconvénient c'est kil me connecte a ma base de donnée mais je doit rentré une info exacte sur les deux pour kil puisse me connecter. Il ne m'en interdit pas l'acés si l'une des infos est mauvaise. Je n'arrive pas a remédier a se pb. Quelequ'un pourrait-il m'aider. Merci.
Je laisse mon code
Et celle si ma page connection
<form name="form" method="GET" action="admin.php">
</form
Cette page est la page admin
<?php
//include est un fichier dans lequel je fait appele à la base de donnée
include "config.php";
//connexion au serveur
$connexion=mysql_connect($serveur,$login,$mdp);
// verifie si connection possible
if (!$connexion) {
echo( "Impossible de se connecter au serveur en ce moment.
" );
exit();
}
// connection à la base de donnée
mysql_select_db("$base", $connexion);
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 17 janv. 2007 à 20:02
$query = 'SELECT mdp FROM tatable WHERE nom ='.$_GET['nom'];
$result=mysql_query($query);
$arr = mysql_fetch_array($result);
if ($arr['mdp'] == $_GET['mdp'])
Meme question:
>> Quel interet de selectionner toute la table si c'est pour faire un choix apres ?
$q 'SELECT COUNT(*) FROM tatable WHERE nom "'.$_POST['nom'].'" AND password = "'.$POST['password'].'" ';
$r = mysql_query($q);
$row = mysql_fetch_row($r);
if ( (int) $row[0] === 1 ) {
// Ok
} else {
// Pas Ok
}
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 17 janv. 2007 à 11:56
Miss1
Oui c vrai que la méthode est ancienne mais c'est la version que j'ai apprise a l'ecole . Je vien de remarquer que je ne fé appel qua la base de donnée sans la tester. La g changer en post mon get ds le formuaire. Mais ou alors si je doit fer un teste sur ma base de donné ou dois-je le mettre? car maintenant en ayant aremplacer get par post il ne veut plus me connecter.
Parce que la je suis complétement larguer.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Miss1
Messages postés221Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention22 décembre 2010 17 janv. 2007 à 12:01
Miss1
J'avais oublié de dire que je remarque qu'il reconnait le login exact (ex admin mais mon mdp est admin si je mé administrateur) mais si je mé un autre mot de passe il va me laisser entrer et mm chose ds lotre sens. dc voudré empecher que cela ne se produise.
Il y a pas un problème avec le 'Password' qui n'existe pas dans ton formulaire ?
<hr size="2" width="100%" />
Sachant qu'on peut toujours enlever une ligne à un programme, et que dans un programme il y a toujours un bug, un programme peut se résumer à une ligne avec un bug.
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 17 janv. 2007 à 14:47
Déja, on veut bien t'aider mais il vaut mieux faire un effort sur le français quand même. C'est pas parce qu'on est sur un forum où on parle de $php['comme_des_geeks'] qu'il faut écrire n'importe comment :)
Voici le modèle pour une identification via formulaire (que ce soit admin ou membre simple) :
-> écriture des identifiants dans le champ "login" et "password"
-> soumission du formulaire
-> traitement du formulaire :
-> vérification de la soumission du formulaire (champs existes etc...)
-> vérification des champs (non vides, caractères spéciaux etc...)
-> traitement avec la base de donnée
-> connection
-> vérification du login/password du formulaire avec celui de la base de donnée
-> Si il existe un enregistrement avec le bon couple login/password, alors on en déduis que celui qui veut se logger est bien la personne qu'on souhaite. On lui donne les droits nécessaires
-> on redirige la personne au bon endroit.
-> si mauvais traitement, on relance la procédure du formulaire.
Voila comment ca se passe.
Jpeux pas mieux faire :)
Flachy Joe
Messages postés2103Date d'inscriptionjeudi 16 septembre 2004StatutMembreDernière intervention21 novembre 20231 17 janv. 2007 à 19:32
$query="Select * from tatable";
$result=mysql_query($query);
while (list($nom, $mdp) = mysql_fetch_row($result))
{ if ($nom $_GET['nomsaisie'] and $mdp $_GET['mdpsaisie'])
{
>> Quel interet de selectionner toute la table si c'est pour faire un choix apres ?
$query 'SELECT mdp FROM tatable WHERE nom'.$_GET['nom'];
$result=mysql_query($query);
$arr = mysql_fetch_array($result);
if ($arr['mdp'] == $_GET['mdp'])
...