Aller au contenu

Création d'une table de membres


Chamz

Sujets conseillés

Bonjour !

J'ai emprunté PHP et MySQL pour les nuls et j'ai fait quelques recherches sur le web (je veux créer un script php + base de données pour permettre à mes élèves de CM1 de bosser chez eux).

Aujourd'hui,je fais l'enregistrement d'utilisateurs. Je comprends à peu près tout, mais je n'ai pas toutes les explications à propos de la création d'une table pour les membres. Pouvez-vous m'aider ?

CREATE TABLE Membre (
membre_id INT(11) UNSIGNED NOT NULL auto_increment
membre_pseudo VARCHAR(20) NOT NULL,
cree_le DATETIME NOT NULL default '0000-00-00 00:00:00',
der_visite DATETIME NOT NULL default '0000-00-00 00:00:00',
mot_passe CHAR(20) NOT NULL,
nom VARCHAR(50) NOT NULL,
prenom VARCHAR(50) NOT NULL,
email VARCHAR(50) NOT NULL,
PRIMARY KEY(MEMBRE_id)
) TYPE=MyISAM;
INSERT INTO Membre VALUES (1,'admin','2006-03-09 12:53:00','2006-03-09 12:53:00','passe','','','');

1- Quel nombre faut-il placer dans membre_id int() ? J'ai mis 11 mais ça fait beaucoup pour mes 22 élèves...

2- Faut-il mettre UNSIGNED à la ligne membre_id ? En regardant sur les sites sur SQL, ils ne le mettent pas...

3- Concernant le format de la date, est-il possible de mettre 00-00-0000 ?

Merci ! :)

Modifié par André Jorge
Lien vers le commentaire
Partager sur d’autres sites

1- Quel nombre faut-il placer dans membre_id int() ? J'ai mis 11 mais ça fait beaucoup pour mes 22 élèves...

A la place de INT(11) je mettrais un TINYINT(2)

2- Faut-il mettre UNSIGNED à la ligne membre_id ? En regardant sur les sites sur SQL, ils ne le mettent pas...

En mettant UNSIGNED tu pourras aller de 0 à 255, dans le cas contraire ce sera de -128 à 127 (ou quelque chose du genre). Donc là je mettrais aussi un UNSIGNED quoique dans ton cas si tu ne comptes garder que 22 enregistrements ça changera pas grand chose...

3- Concernant le format de la date, est-il possible de mettre 00-00-0000 ?
Non. Mais à ta place j'utiliserais un champ TIMESTAMP pour enregistrer la date et dans le script PHP j'utiliserais la fonction date() pour resortir la date (tu pourras l'organiser comme tu veux et en plus rajouter des données précises de l'ordre de la seconde). Ou alors tu peux utiliser une expression régulière pour remettre la date dans le bon ordre à partir du format 00-00-0000. Modifié par John_attend
Lien vers le commentaire
Partager sur d’autres sites

Le problème des dates, dans l'ordre que tu donnes, et que tu vas avoir tout un tas de petites fonctions à développer pour remettre systématiquement les dates dans l'ordre que tu voudra :

Pour l'affichage, les comparaisons, le select dans mysql, etc..

Avec un timestamp, tu t'affranchis de tout ca. Evidement, quand tu regardes ta base, c'est plus 'abstrait'. La date ne te saute pas aux yeux immédiatement. Mais tu t'y retrouves vraiment en fin de compte ;)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...