Gestion de membres

Soyez le premier à donner votre avis sur cette source.

Vue 8 062 fois - Téléchargée 2 847 fois

Description

J'ai fait se code parce qu'on me l'as demander, je l'ai fait le plus simple possible et désolès si le code existe déjà

Source / Exemple :


se qu'il faut mettre sur la base mysql:

à 3 champs

id       TINYINT 4      not null      auto_increment      Primary Key (sous la petite clé)
name     Text           not null
password Text           not null

Conclusion :


je conseil de faire un fichier config.php sous un dossier nommer inc ou l'on mets le information de la base mysql, cela evite de retaper un code de 4lignes a chaque fois

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

kankrelune
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
-
Je rajouterais que SELECT * est effectivement mauvais pour les performance (oblige mysql à lister les champs avant de les renvoyer) mais surement pas pour la maintenance... c'est plutot le contraire... .. .

@ tchaOo°
kankrelune
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
-
webdeb... non c'est le contraire... on utilise toujours mysql_real_escape_string() et si magic_quotes est activé on fait un stripslashes avant de le passer dans mysql_real_escape_string()... .. !

D'ailleurs magic_quotes est tellement inéfficace qu'ils prévoient de le supprimer dans PHP6... .. . :oP

@ tchaOo°
cs_jean84
Messages postés
449
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
5 mars 2009
-
Webdeb > "On ne fait pas de SELECT *, c'est mauvais pour les performances et pour la maintenance du code. On liste les champs (même si c'est long)."

Soit pragmatique dans tes commentaies, tu gagneras surement plus en ecoute...

kankrelune > "J'ais pas testé mais en vrac je dirais..."
Qu'est-ce que ce doit etre quand tu t'y mets a fond ... :p

gloomy64 > "J'ai fait se code parce qu'on me l'as demander, je l'ai fait le plus simple possible et désolès si le code existe déjà"
Si tu sais que ton code existe deja, qu'il n'apporte rien de neuf, qu'en plus tu ne le fais apparement pas de gaite de coeur, quel est l'interet de le poster alors ?
webdeb
Messages postés
509
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
31 mars 2009
2 -
Powa toutes les fautes....

Kankrelune, le mysql_real_escape_string n'est pas à faire à chaque fois. Il faut le faire uniquement si magic_quotes_gpc() est à ON dans le php.ini; sinon tu échappes manuellement avec addslashess().

On ne fait pas de SELECT *, c'est mauvais pour les performances et pour la maintenance du code. On liste les champs (même si c'est long).
kankrelune
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
-
Salut...

J'ais pas testé mais en vrac je dirais...

ligne 11-12 ?><?php inutile

ligne 13 $action est définis nul part

ligne 15 include("inc/config.php"); fichier non fournis même si on se doute de ce qu'il y a dedans

ligne 19 $sql = 'SELECT * FROM nom_de_la_table WHERE nom_du_champs="'.$_POST['name'].'" ';

RAAAAH pas bon... aucun controle du contenu de $_POST['name'] en deux temps trois mouvement un pirate peut te faire sauter ta base de données... toujours utiliser mysql_real_escape_string() pour echapper les charactères sensibles des chaines de charactères... .. .

ligne 24 $login = mysql_fetch_array($req);

et si l'utilisateur à mal tapé sont login de que mysql ne retourne aucun enregistrement... donc...

if(mysql_num_rows($req) === 0)
/* on ne fait pas de comparaison on réaffiche direct le formulaire */
ligne 27 $login[user] et $login[login] user et login ne sont pas des constantes donc $login['user'] et $login['login']

ligne 27 toujours $name et $password ne sont pas définis

ligne 30 echo'<form method="post" action="'.$page_name.'.php">

$page_name est inutile <form method="post" action="?">

c'est un détail mais les champs de formulaires doivent se terminer par un / donc...

et non pas

ligne 27 $name == $login[user] est inutile vu que le nom est forcement bon sinon mysql ne l'aurait pas trouvé...

ligne 27 tu t'es trompé si le pass est bon tu réaffiche le formulaire

Problème de structure je ne suis pas sur que deux formulaire soient utile... autant faire le traitement... s'il y a un problème tu rempli une variable $message (préalablement définnie à vide) avec le message et afficher le formulaire en fin de page avec la variable $message... et s'il n'y a pas de problème tu affiche le contenu ou tu redirige... le problème de ton code c'est qu'il n'y a aucun stockage d'information en session... si je réactualise ma page ou que je change de page il faudra que je me réidentifis... .. .

Bref la base est là mais il y a pas mal de modifications à faire... je met 4/10... .. .

@ tchaOo°

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.