creation site communautaire - conseils BDD
1 message
• Page 1 sur 1
- tannos
- Nouveau WRInaute

- Messages: 7
- Inscription: 20 Fév 2007
creation site communautaire - conseils BDD
Bonjour à tous
Je souhaite créer un site communautaire (genre facebook) pour les passionné de motos
Pour cela, j'utilise php, mysql et je symfony.
Symfony je débute.
Le concept:
Les utilisateurs s'enregistrent sur le site et créent des évènements.
Chaque utilisateur dispose d'un espace perso. Dans cette espace, il y a 2 rubriques:
Mes motos :: ou il peut créer une fiches pour chacune de ses motos
Mes sorties:: ou il peut créer un évènement
Pour la rubrique mes sorties voici le fonctionnement:
Il crée une sortie (ou un évènement) avec statut (participant ou organisateur)
une fois sa sortie créée, il peut créer :
-une fiche ma moto ou il prend sa moto en photo et peut mettre un commentaire qui va bien
-un album photos
Voici les contraintes que je veux imposer aux utilisateurs:
une fiche 'ma moto' est rattachée à un évènement
un album photos est rattaché à un évènement
voici le schéma de ma base de données:
Quelqu'un peut il jeter un coup d'œil sur le modèle de ma base et me dire si j'ai bien mis les clés comme il faut ?
Il y a t'-il des optimisations possibles?
Je suis preneur de toute remarque
Merci
Cordialement
Mike
Je souhaite créer un site communautaire (genre facebook) pour les passionné de motos
Pour cela, j'utilise php, mysql et je symfony.
Symfony je débute.
Le concept:
Les utilisateurs s'enregistrent sur le site et créent des évènements.
Chaque utilisateur dispose d'un espace perso. Dans cette espace, il y a 2 rubriques:
Mes motos :: ou il peut créer une fiches pour chacune de ses motos
Mes sorties:: ou il peut créer un évènement
Pour la rubrique mes sorties voici le fonctionnement:
Il crée une sortie (ou un évènement) avec statut (participant ou organisateur)
une fois sa sortie créée, il peut créer :
-une fiche ma moto ou il prend sa moto en photo et peut mettre un commentaire qui va bien
-un album photos
Voici les contraintes que je veux imposer aux utilisateurs:
une fiche 'ma moto' est rattachée à un évènement
un album photos est rattaché à un évènement
voici le schéma de ma base de données:
- Code: Tout sélectionner
-- -----------------------------------------------------
-- Table `motard`.`user`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `motard`.`user` (
`id` INT(11) NOT NULL AUTO_INCREMENT ,
`civilite_id` INT(11) NULL DEFAULT 1 ,
`nom` VARCHAR(75) NOT NULL DEFAULT '' ,
`prenom` VARCHAR(75) NOT NULL DEFAULT '' ,
`password` VARCHAR(255) NOT NULL DEFAULT '' ,
`email` TEXT NOT NULL ,
`avatar` TEXT NULL ,
`birthday` DATE NULL ,
`optin_newsletter` TINYINT(1) NULL DEFAULT 0 ,
`optin_partenaires` TINYINT(1) NULL DEFAULT 0 ,
`activation_key` VARCHAR(255) NULL ,
`ip_enregistrement` VARCHAR(255) NULL ,
`ip_connexion` VARCHAR(255) NULL ,
`token` VARCHAR(255) NOT NULL ,
`created_at` DATETIME NULL DEFAULT NULL ,
`updated_at` DATETIME NULL DEFAULT NULL ,
PRIMARY KEY (`id`) ,
INDEX `user_FI_1` (`civilite_id` ASC) ,
UNIQUE INDEX `user_U_1` (`email` ASC) ,
UNIQUE INDEX `user_U_2` (`token` ASC) )
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `motard`.`ma_moto_user`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `motard`.`ma_moto_user` (
`id` INT(11) NOT NULL AUTO_INCREMENT ,
`user_id` INT(11) NOT NULL ,
`evenement_id` INT(11) NOT NULL ,
`categorie_id` INT(11) NOT NULL
`titre` VARCHAR(255) NOT NULL DEFAULT '' ,
`description` TEXT NOT NULL ,
`caption_image1` TEXT NULL ,
`caption_image2` TEXT NULL ,
`caption_image3` TEXT NULL ,
`caption_image4` TEXT NULL ,
`caption_image5` TEXT NULL ,
`created_at` DATETIME NOT NULL ,
`updated_at` DATETIME NOT NULL ,
PRIMARY KEY (`id`) ,
INDEX `fk_ma_moto_user_categories_ma_moto` (`categorie_id` ASC) ,
INDEX `fk_ma_moto_user_user` (`user_id` ASC)
INDEX `fk_ma_moto_user_evenement` (`evenement_id` ASC) ,
CONSTRAINT `fk_ma_moto_user_categories_ma_moto`
FOREIGN KEY (`categorie_id` )
REFERENCES `motard`.`categories_ma_moto` (`id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_ma_moto_user_user`
FOREIGN KEY (`user_id` )
REFERENCES `motard`.`user` (`id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_ma_moto_user_evenement`
FOREIGN KEY (`evenement_id` )
REFERENCES `motard`.`evenement` (`id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `motard`.`albums_photos`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `motard`.`albums_photos` (
`user_id` INT(11) NOT NULL ,
`evenement_id` INT(11) NOT NULL ,
`titre` VARCHAR(255) NULL DEFAULT NULL ,
`description` TEXT NULL DEFAULT NULL ,
`created_at` DATETIME NOT NULL ,
`updated_at` DATETIME NOT NULL ,
PRIMARY KEY (`evenement_id`, `user_id`) ,
INDEX `fk_album_photos_user` (`user_id` ASC) ,
INDEX `fk_albums_photos_evenement` (`evenement_id` ASC) ,
CONSTRAINT `fk_album_photos_user`
FOREIGN KEY (`user_id` )
REFERENCES `motard`.`user` (`id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_albums_photos_evenement`
FOREIGN KEY (`evenement_id` )
REFERENCES `motard`.`evenement` (`id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `motard`.`photos`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `motard`.`photos` (
`user_id` INT(11) NOT NULL ,
`evenement_id` INT(11) NOT NULL ,
`caption_image` TEXT NOT NULL ,
PRIMARY KEY (`user_id`, `evenement_id`) ,
INDEX `fk_photos_user` (`user_id` ASC) ,
INDEX `fk_photos_evenement` (`evenement_id` ASC) ,
CONSTRAINT `fk_photos_user`
FOREIGN KEY (`user_id` )
REFERENCES `motard`.`user` (`id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_photos_evenement`
FOREIGN KEY (`evenement_id` )
REFERENCES `motard`.`albums_photos` (`user_id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
Quelqu'un peut il jeter un coup d'œil sur le modèle de ma base et me dire si j'ai bien mis les clés comme il faut ?
Il y a t'-il des optimisations possibles?
Je suis preneur de toute remarque
Merci
Cordialement
Mike
1 message
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Conseil création table BDD sql
- Demande de conseils (Création d'un site)
- Conseils pour la création d'une entreprise
- Conseils création site +- 60.000 visiteurs !
- backlinks création, conseils site internet
- création d'un blog : besoin de conseils
- [création 1er site]cherch. conseils techniques
- plusieurs BDD ou 1 BDD avec des prefixes ???
- Demande de Conseils pour création d'un site web+paiement en ligne
- Yahoo! Questions/Réponses veut développer les réseaux de connaissances - 09-03-2007
- API Google Maps en Flash / Flex - 15-05-2008
- Optimiser son référencement sur Wikio - 10-04-2006
- Conseils en référencement pour les débutants - 04-08-2008
- Les blogs (Search Engine Strategies 2004 - San José) - 06-08-2004
- Script de mise en cache des pages (PHP MySQL) - 09-08-2010
- Google rejoint le projet Open AJAX créé par IBM - 02-02-2006
- 10 règles pour optimiser son référencement sur Google - 12-06-2002
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités
