Chamz Posté 3 Septembre 2006 Posté 3 Septembre 2006 (modifié) 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é 3 Septembre 2006 par André Jorge
John_attend Posté 3 Septembre 2006 Posté 3 Septembre 2006 (modifié) 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é 3 Septembre 2006 par John_attend
Chamz Posté 3 Septembre 2006 Auteur Posté 3 Septembre 2006 (modifié) Merci ! C'est plus clair maintenant. Modifié 3 Septembre 2006 par André Jorge
Vincent Posté 3 Septembre 2006 Posté 3 Septembre 2006 une petite aide pour les dates : MySQL : Formater une date
Anonymus Posté 3 Septembre 2006 Posté 3 Septembre 2006 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
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant