Accueil > Forum > > > > Problème de login
Problème de login
vendredi 1 juin 2007 à 17:07:41 |
Problème de login

Masterchiefer
|
Bonjour tout le monde, je suis en train de créer un système de login à partir d'un code déjà écrit. J'ai fait les modifs nécessaires mais j'ai une erreur... Voici le code provoquant l'erreur : <?php // On démarre la session session_start(); $loginOK = false; // cf Astuce
// On n'effectue les traitement qu'à la condition que // les informations aient été effectivement postées if ( isset($_POST) && (!empty($_POST['Login'])) && (!empty($_POST['Mdp'])) ) {
extract($_POST); // je vous renvoie à la doc de cette fonction
// On va chercher le mot de passe afférent à ce login $sql = "SELECT Login, Mdp FROM Admin WHERE Login='".addslashes($login)."'"; $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql); // On vérifie que l'utilisateur existe bien if (mysql_num_rows($req) > 0) { $data = mysql_fetch_assoc($req); // On vérifie que son mot de passe est correct if ($password == $data['Mdp']) { $loginOK = true; } } }
// Si le login a été validé on met les données en sessions if ($loginOK) { echo '<a href="index3.php" />'; } else { echo 'Une erreur est survenue, veuillez réessayer !'; } ?>
Le code appellant cette procédure est le suivant : <td> <form method="post" action="verifLogin.php"> <tr> <td width="1">Login</td> <td width="10"><input type="text" name="Login"></td> </tr> <tr> <td width="1">Mot de passe</td> <td width="10"><input type="password" name="Mdp"></td> </tr> <tr> <td colspan="2"> <input type="submit" name="submit" value="Login"> </td> </tr> </form> </td>
Le message d'erreur étant le suivant : Erreur SQL : SELECT Login, Mdp FROM Admin WHERE Login = ''
J'ai vérifié la ligne (en couleur dans le précèdent code) et je n'ai pas vu d'erreur  une idée    (si vous pouviez par la meme occasion m'expliquez d'ou vient mon erreur, je cherche a progresser ^^)
|
|
vendredi 1 juin 2007 à 18:24:08 |
Re : Problème de login

neigedhiver
|
Salut,
extract($_POST); // je vous renvoie à la doc de cette fonction
L'auteur du code te renvoie à la doc de cette fonction, mais pas nous.
Donc...
En premier lieu, le message d'erreur de MySQL n'est pas très explicite, mais je ne pense pas que ce soit la faute à MySQL.
Ensuite, il semble que la variable $login soit vide, mais sans le code de la fonction extract, pas facile à dire.
Pour terminer, addslashes ne protège absolument pas des injections SQL, il est préférable d'utiliser mysql_real_escape_string() (Cf la doc php de cette fonction)
|
|
samedi 2 juin 2007 à 09:47:57 |
Re : Problème de login

Masterchiefer
|
merci pour le tuyau, et j'ai fouiller le site et je trouve pas son soit disant doc :/ donc je crois que je vais chercher un autre moyen ^^
|
|
samedi 2 juin 2007 à 10:42:00 |
Re : Problème de login

Masterchiefer
|
Re, j'ai trouvé une autre solution mais la aussi sa ne marche pas :/ je vais finir par croire que je suis maudit  Alors voici le code lanceant le login : <td><table width="0" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td><form name="login" method="post" action="validate.php"></td> <p align="right">Login <input type="text" name="user_name"></p> <p align="right">Pass <input type="password" name="password"></p> <td><input type="submit" value="Envoyer"></td> </form> </tr> </table></td>
On arrive donc sur la page de vérification : <?php session_start(); //Connection à mysql et sélection de la base de données $connection = mysql_connect("***") or die(mysql_error()); mysql_select_db("*", $connection) or die(mysql_error()); //Préparation de la requête $query = "SELECT * FROM Admin WHERE Login=".$_POST['user_name']." AND Mdp=".$_POST['password'] .""; //exécution de la requête et récupération du nombre de résultats $result = mysql_query($query, $connection); $affected_rows = mysql_num_rows($result); //S'il y a exactement un résultat, l'utilisateur est authentifié, sinon, on l'empêche d'entrer if($affected_rows == 1) { print 'Vous êtes authentifié'; //On ajoute l'utilisateur aux variables de session $_SESSION'user_name' = $user_name; //a href = "index3.php" (je ne sais pas si ce lien est valable ici) ; } else { print 'Accès refusé'; } ?>
Puis au début de ma page index3.php je place les variables suivantes : <?include("verifLogin.php");?> <?Session_start();?>
Tout ceci pour arriver à sa ===> Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /homepages/6/d121071583/htdocs/pc-planet.fr/test/validate.php on line 21
Alors, vous voyez ce qui cloche   mon niveau n'étant pas très avancé, je ne sais pas très bien maitrisé les sessions donc si j'ai fait une erreur j'aimerais avoir une petite explication svp, merci d'avance 
|
|
mardi 5 juin 2007 à 14:38:31 |
Re : Problème de login
|
mardi 5 juin 2007 à 15:01:22 |
Re : Problème de login
|
mardi 5 juin 2007 à 15:12:14 |
Re : Problème de login

Masterchiefer
|
olalala en effet, j'ai fait plein de faute d'inatention :/ désolé et merci pour le coup de main. ++
|
|
mardi 5 juin 2007 à 15:18:11 |
Re : Problème de login

Masterchiefer
|
je vien de modif le code et il a marché mais j'ai voulu rajouter quelque chose et sa plante :/
je voudrais qu'après verif du login il m'emmene sur une autre page, cela est-il possible?
j'ai essayé quelque chose mais je ne sais plus comment faire pour lancer un lien, j'ai essayé ceci mais je ne suis pas sur des balises :/
$_SESSION['Login'] = $Login; echo 'a href = "index3.php";' }
ps : si vous connaissez un site expliquant les balises if etc sa m'arrangerait ;)
|
|
mardi 5 juin 2007 à 15:20:50 |
Re : Problème de login

neigedhiver
|
Réponse acceptée !
RTFM => la doc est assez explicite...
http://fr2.php.net/manual/fr/language.control-structures.php#control-structures.if
|
|
mardi 5 juin 2007 à 15:21:48 |
Re : Problème de login
|
Cette discussion est classée dans : code, erreur, login, sql, post
Répondre à ce message
Sujets en rapport avec ce message
Prob : UPDATE, erreur SQL... [ par tomatokatchup ]
Voici la syntaxe de mon update :$descr = addslashes($_POST['desc']);$lien = mysql_connect ($hote, $user, $mdp);$requete = "UPDATE tmt_tourney SET titr
insertion dans une base [ par 01cod10 ]
pouvez vous m'aider à corriger ce bout de script. Voici le message d'erreur que j'ai eu : Erreur SQL !INSERT INTO membres VALUES("", "monia", "ff3d00
mes erreur de ce marque pas espace membre [ par speedylol ]
bonjour voici , j ai un script membres que j'ai modifier a mon goût mes les erreur de fonction pas je vois pas pq seriez vous m'eclairez la dessus svp
Probleme de base de donnée --> conf.php3 --> création de Login <-- [ par astuces_jeux ]
Bonjour,jai un probleme sur mon site en créant une page de connexion je ne sais pas comment configurer conf.php3ici :/*-------------------------------
Erreur unexpected T_IF [ par jimmypage64 ]
Bonjour j'ai une petite erreur dans mon code et je ne vois pas du tout d'ou cela peut venir !!! Mon code est le suivant : if (isset($_POST['validinsc
Besoin de vos yeux expert [ par Anthotill ]
Bonjour à tousJ'ai un probleme avec une page que je suis en train de créer, une page d'authentification.Je récupère les informations de deux formulair
erreur dans ma requête [ par gigawatt ]
BonjourJ'ai un message d'erreur qui s'affiche dès que je lance mon appli.Ci joint mon code sous php sql.$sql .= " select ct_num, ct_code, ct_dte, ct_d
probleme avec les cookies [ par grandmugule ]
g un bleme avec les cookies voici l'index de mon espace membres:setCookie("login","$login",time()+3600); setCookie("pass","$pass",time()+3600);<
Problème de requete SQL [ par MrsDallara ]
Bonjour à tous, j'ai une requete SQL qui ne s'execute pas, alors que je ne vois pas où l'erreur peut se trouver. Voici donc l'ensemble du code qui nou
Variables [ par Toolsweb ]
Bon j'ai çainclude("../conf.php"); if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) { extract($_POST); // on recupère le passw
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|