Création d'une table sql [Résolu]

Messages postés
114
Date d'inscription
samedi 27 juillet 2013
Statut
Membre
Dernière intervention
7 mai 2014
- - Dernière réponse : jordane45
Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
- 19 févr. 2014 à 01:00
Bonjour,

J'ai créé une table UTILISATEURS
Est-ce que ça répond à mes attentes en matière de base de donnée pour gérer un accès membre avec des paramétrages de fichiers comme pour le projet blog-machine

Voici le fichier SQL de création de la table et des champs

CREATE TABLE 'UTILISATEURS' (
'id' int(4) NOT NULL auto_increment,
'prenom' varchar(65) NOT NULL default '',
'nom' varchar(65) NOT NULL default '',
'login' varchar(65) NOT NULL default '',
'password' varchar(65) NOT NULL default '',
'email' varchar(65) NOT NULL default '',
PRIMARY KEY ('id')
) TYPE=MyISAM AUTO_INCREMENT=2 ;


1 - Création de la table "UTILISATEURS"
2 - Dans cette table les champs :
- id ( auto incrémenté ) // Int (4) est ce bon ?
- Nom (varchar) // Pas null par défaut; valeur (65); Est-ce bon ?
- Prenom (varchar) // ID primary key Type MyIsam auto_increment=2; Bon ?
- Login(varchar)
- Pasword (varchar)
- Email (varchar)

Est-ce que vous voyez des erreurs ?
Afficher la suite 

5 réponses

Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
317
0
Merci
Non, pas d'erreur

Par contre, 65 caractères (au max) pour un password.. c'est peut être un peu beaucoup...
Il est rare qu'une personne mette un password aussi long.
varchar(20) devrait être très largement suffisant.

Ca ne joue pas sur le fonctionnement de ton appli.. mais si un jour tu as beaucoup de membres sur ton site.. ça permettra de gagner un peu de place pour ta base de données;...






Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
NHenry
Messages postés
14592
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
137 -
[block]65 caractères (au max) pour un password/block
Certes, mais il est courant de ne pas stocker le mdp en clair dans la bdd quand même.
Je te conseil sha1 pour le mot de passe (fonction connue de MySql)
jordane45
Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
317 -
oui, un moment de fatigue...
Comme le dit NHenry
En effet, il faut crypter le password en BDD en effet.
en md5 ( 32 caractères ) ou sha1 qui sont des méthodes de hachage
blog-machine
Messages postés
114
Date d'inscription
samedi 27 juillet 2013
Statut
Membre
Dernière intervention
7 mai 2014
-
coder le mot de passe dans la base de donnée ou dans le mail ?
jordane45
Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
317 -
Dans la base de données
jordane45
Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
317 -
Ajoute également un champ dans ta table pour y stocker le nom du dossier que tu as créé pour ton utilisateur.
Comme ça.. plus besoin de lui envoyer par mail... Il arrive sur ton site.. se connecte.. et est directement redirigé vers sa page
Commenter la réponse de jordane45
Messages postés
114
Date d'inscription
samedi 27 juillet 2013
Statut
Membre
Dernière intervention
7 mai 2014
0
Merci
Bonjour,

Finalement j'ai mis 32 caractères qui correspondent à un encryptage md5 que je compte mettre dans le champ mot de passe de mon mail

De toute façon j'ai ma réponse, je clos le fil,
merci
Commenter la réponse de blog-machine
Messages postés
114
Date d'inscription
samedi 27 juillet 2013
Statut
Membre
Dernière intervention
7 mai 2014
0
Merci
Ca fait quinze jours que je travail sur ce satané mail et tu me dis qu'il n'est plus nécessaire ? C'est dur et puis j'aime bien l'idée que l'on soit soumit à s'enregistrer et comme ça avec le double mail je contrôle plus facilement ce que les clients mettent dans leur répertoire, d'un point de vue logistique pour moi je trouve ça mieux. Mais si tu as d'autres arguments je suis tout à fait prêt à réviser mon jugement. Autre problème, qu'il faut prendre en compte avec ça, est ce que je peux faire un champ crypté en md5 et l'intégrer dans un champ de la BDD?

J'ai fait un descriptif complet de l'état de mes travaux sur la question de comparaison d'un login et d'un mot de passe sur le site
Commenter la réponse de blog-machine
Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
317
0
Merci
Ca fait quinze jours que je travail sur ce satané mail et tu me dis qu'il n'est plus nécessaire ?
Je n'ai pas dit que ton mail n'était pas nécessaire.. je te dis que de mettre le nom du répertoire ne l'est pas

En même temps.. lorsque tu t'es mis à écrire le code pour envoyer ton mail tu n'avais pas encore imaginé que tu mettrais en place une BDD ....

C'est ça le souci lorsque l'on développe quelque chose sans avoir analysé tous les aspects du produit avant...


j'aime bien l'idée que l'on soit soumit à s'enregistrer
Ben c'est bien pour ça que je t'ai invité à mettre en place une BD ....

Autre problème, qu'il faut prendre en compte avec ça, est ce que je peux faire un champ crypté en md5 et l'intégrer dans un champ de la BDD?
Un texte crypté en MD5 ... reste un texte.. tu peux donc le mettre dans ta BDD..


Pour ton password par contre il existe un type exprès pour ça dans mysql : password ( au lieu de varchar)



PS: tu peux me rapeller ce que tu comptes faire "stocker" à tes utilisateurs dans leurs répertoires ?
Je te demande ça... car si ça se trouve, en fonction de tes besoins tu n'aurais peut être même plus besoin de répertoire séparé pour chaque utilisateur...
Comme je te l'avais dis dans un message précédent, il est tout à fait possible de n'utiliser qu'un Template pour le site ( des pages uniques et communes à tous dans lesquels les informations s'afficheront en fonction des données issues de ta BDD )
Cela évite de "dupliquer" des pages inutilements.. dans des répertoires propres à chaque utilisateurs (comme tu sembles vouloir le faire )

...imagines que tu ais 10 000 utilisateurs...ça te fera donc 10 000 répertoires avec dans chaque répertoire X pages .. X images .... bref.. la pagaille à administrer.. sans compter de la place que ça va prendre sur ton serveur.......
Commenter la réponse de jordane45
Messages postés
114
Date d'inscription
samedi 27 juillet 2013
Statut
Membre
Dernière intervention
7 mai 2014
0
Merci
Ok
Je n'ai pas dit que ton mail n'était pas nécessaire.. je te dis que de mettre le nom du répertoire ne l'est pas

effectivement et s'il arrive sur une page avec juste le login et son mot de passe à rentrer pour commencer à programmer le blog c'est bien aussi

En même temps.. lorsque tu t'es mis à écrire le code pour envoyer ton mail tu n'avais pas encore imaginé que tu mettrais en place une BDD ....

C'est sur mais j'avais une petite idée sur ce que je devais faire mais pas comment et la BDD était nécéssaire

C'est ça le souci lorsque l'on développe quelque chose sans avoir analysé tous les aspects du produit avant...

on fait ce qu'on peut...pour pouvoir tout anticiper

Un texte crypté en MD5 ... reste un texte.. tu peux donc le mettre dans ta BDD..


okay

Ce que je fait c'est un blog paramétrable, c'est à dire que l'on peut stocker des images et du texte, le reste n'est pas souhaitable trop de place trop de volume, donc on pourra agencer du texte, des titre, des vidéos (embed) et des images JPG, png et gif


tu auras une idée avec ce lien :
http://www.blog-machine.fr/pages/index1.htm


voilà
jordane45
Messages postés
26776
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2019
317 -
on peut stocker des images et du texte
ça... typiquement ça peut être géré avec ta BDD

<block>on fait ce qu'on peut...pour pouvoir tout anticiper <:block>
Je suis d'accord avec toi.. surtout si c'est un de tes premiers dev.
Et puis on ne peut pas tout prévoir quand on ne connait pas "tout" ce qui est faisable..
Par contre, si j'étais toi.., maintenant que tu commences à penser Base de données.. je m'arreterai de coder quelques heures ( voir jours..)... je prendrais un papier et un crayon et je réfléchir a ce que tu veux faire.. et comment tu vas le faire ..
Liste des tables à créer dans la BDD
Quelles vont être les fonctions nécéssaires à mon programme
par exemple :
- vérifier qu'un user existe et que son password est bon ,
- créer un nouveau User (avec un login qui n'existe pas déjà dans la base)
- Ajout des photos / Textes dans la BDD (si tu choisi de le faire )
- Rediriger le user vers son répertoire (si tu conserves l'idée du répertoire individuel) ..
- Afficher les informations relatives à tes users ( dans sa page il a tels textes.. telles images....)

Bref.. y'a du boulot..
Commenter la réponse de blog-machine