LOGIN SHA1 + CRÉATION UTILISATEUR

Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
- - Dernière réponse : balatus
Messages postés
2
Date d'inscription
dimanche 30 mars 2008
Statut
Membre
Dernière intervention
24 septembre 2011
- 24 sept. 2011 à 15:35
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52771-login-sha1-creation-utilisateur

Afficher la suite 
cod57
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
8 -
bonsoir
ton script est bien réalisé ... il y a tout sauf ?

il faudrait utiliser mysql_real_escape_string()
en effet si tu mets '\' dans login et pass vide surprise ...
je suis pas hacker mais c'est un conseil si tu veux pas te retrouver avec ta base remplie de caractères cyrilliques

ici

if (isset($_POST['login'])){ // execution apres envoi du formulaire
$login = mysql_real_escape_string($_POST['login']); // mise en variable du nom d'utilisateur
$pass = sha1($_POST['pass']); // mise en variable du mot de passe crypté

a++
aventurier19
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013
-
Merci COD57, c'est corrigé!
cod57
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
8 -
bonjour pas de quoi

ligne 42 je ferais ça, ajoute le exit
et un petit espace apres Location:
sur tout les header() à vrai dire

header("Location: index.php?erreur=delog");exit;

ça finit tout les processus en cours

SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass' LIMITI 1
comme : 'uniquement le premier trouvé et c'est tout'

a++
neigedhiver
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
13 -
Vite fait :
Note:

Si vous utilisez $_SESSION (ou $HTTP_SESSION_VARS pour PHP 4.0.6 ou plus ancien), utilisez unset() pour détruire une variable de session, i.e. unset($_SESSION['nomvariable']);.

Source : http://es.php.net/session_unset
aventurier19
Messages postés
102
Date d'inscription
mercredi 14 novembre 2007
Statut
Membre
Dernière intervention
23 juillet 2013
-
Merci pour ta remarque NEIGEDHIVER mais j'utilise session_unset() pour détruire toutes les variables de la session courante.
unset() permet de détruire les variables de son choix (on peut toutes les détruiremais il aurait fallut faire unset($privilege, $nom, $prenom, $login, $pass); /* c'est lourd, non? */

COD57 j'ai pris bonne note de ton info je le mettrait bientôt car j'essai d'emplêcher la création de doublon en login avec une requête du type
SELECT * FROM $tablename_dbprotect WHERE (`login` LIKE '$login')
De plus le nom de la table sera personalisable plus facilemùent grâce à une variable $tablename_dbprotect dans le fichier de connexion

PS: n'hésitez pas à noter et dire ce que vous en pensez !
@+