Mado Posté 16 Février 2004 Posté 16 Février 2004 bonjour bonjour c'est un projet que je dois faire dans le cadre de mon diplome, j'ai choisi de faire un site de ventes ou locations de tableaux en ligne au depart c'est moi qui vait entrer quelques tableaux, faut il que je cree une base d'images? je pense que oui, mais comment je les nomme les images pour qu'elles soient sur le site? ensuite les artistes pourront uploader eux meme les photos de leurs tableaux, est ce que ca va alimenter les bases que j'aurais creer pour les tableaux? heu je peux vous mettre ici mon mcd (modele conceptuel de données) pour que vous regardiez si j'ai oublie quelque chose? merci
Arlette Posté 16 Février 2004 Posté 16 Février 2004 heu je peux vous mettre ici mon mcd (modele conceptuel de données) pour que vous regardiez si j'ai oublie quelque chose? Si tu veux l'avis de la communauté, c'est mieux . Il y aura toujours quelques specialistes pour te donner des conseils.
Dan Posté 17 Février 2004 Posté 17 Février 2004 Bonjour Marie, Ce serait bien de poster ton MCD .. parce qu'en ce qui concerne le stockage des images tu as le choix. soit tu stockes les images dans des champs 'blob' soit tu ne stockes dans la base que le chemin des fichiers images sur le serveur La deuxième solution est préférable pour plusieurs raisons: tu n'encombres pas ta base de données avec des éléments pour lesquels elle n'est pas vraiment prévue, et tu laisses pleinement le cache du navigateur jouer son rôle. Le nommage de tes fichiers est question de choix personnel... tu peux par exemple choisir un nom de fichier avec une partie numérique qui s'incrémente automatiquement. Dan
Mado Posté 20 Février 2004 Auteur Posté 20 Février 2004 merci Dan et Arlette je mettrais le mcd demain
Mado Posté 25 Février 2004 Auteur Posté 25 Février 2004 donc voila, mon projet est un site de locations et ventes de tableaux en ligne on va faire quand meme pas trop compliqué je pense voila mon mcd table artiste id_artiste char30 Nom_artiste char30 Prenom_artiste char30 Adresse_artiste char100 Ville_artiste char30 Code_postale_artiste char30 Telephone_artiste char30 Mail_artiste char100 site_artiste char30 Id_tableau (cle primaire)? MDP_artiste char30 table Tableau id_tableau char30 Nom_tableau char30 taille_tableau char30 technique_tableau char100 orientation_tableau char30 prix_loc_tableau char30 prix_vente_tableau char30 Id_artiste (cle primaire)? Id_categorie (cle primaire)? Table_categorie Id_categorie Nom_categorie char50 table_clients id_cleints char30 Nom_clients char30 Prenom_clients char30 Nom_entreprise char30 Adresse_clients char100 Ville_clients char30 Code_postale_clients char30 Telephone_clients char30 Mail_clients char100 site_clients char30 MDP_artiste char30 table_location id_loc date_loc date_retour montant_loc id_client (cle primaire)? id_tableau (cle primaire)? Table_vente id_vente montant_vente id_client id_tableau pour que les artistes puissent uploader les photos de leurs oeuvres ils doivent etre membres et pareil pour les clients si ils veulent louer ou acheter il faut qu je cree des tables membres cleints et artistes je pense du style ident_cleint nom_client mdp_client id_client idem pour artiste voila je ne sais pas trop ou mettre les cle primaire suis pas sur de moi sur le coup la donc les artistes pourront uploader eux meme leurs photos mettre le prix de location qui sera toujours pour un jour et le prix de vente et des infos sur le tableau voir table_tableau sur les pages artistes les cleints pourront selectioner le tableau a louer mettre la duree de loc et le calcul se fera tout seul saisir l'adresse de livraison si differente de l'adresse de facturation c'est correct? est ce un gros travail? j'ai meme plus u mois pour faire ca?
Mado Posté 26 Février 2004 Auteur Posté 26 Février 2004 (modifié) j'avais pas vu que tu l'avais deja mis excuses heu par rapport a ce que tu m'a corrige j'ai rajoute une table galerie, parce qu'il faudra que les clients puissent savoir ou se trouve le tableau pour qu'il puisse soit aller le chercher soit le voir # # Table structure for table 'categorie' # CREATE TABLE categorie ( id_categorie int(10) unsigned NOT NULL auto_increment, nom_categorie varchar(100) NOT NULL DEFAULT '' , PRIMARY KEY (id_categorie), UNIQUE id_categorie (id_categorie), INDEX id_categorie_2 (id_categorie) ); # # Dumping data for table 'categorie' # # # Table structure for table 'location_vente' # CREATE TABLE location_vente ( id_loc_vente int(10) unsigned NOT NULL auto_increment, type_transaction varchar(10) NOT NULL DEFAULT '' , date_debut varchar(10) NOT NULL DEFAULT '' , date_retour varchar(10) NOT NULL DEFAULT '' , montant int(10) NOT NULL DEFAULT '0' , id_membre int(10) NOT NULL DEFAULT '0' , PRIMARY KEY (id_loc_vente), UNIQUE id_loc_vente (id_loc_vente), INDEX id_loc_vente_2 (id_loc_vente) ); peut etre faut que je mette aussi id_galerie dans la table tableau aussi comme ca on saura par galerie quel tableua on peut voir # # Dumping data for table 'location_vente' # # # Table structure for table 'membre' # CREATE TABLE membre ( id_membre int(10) unsigned NOT NULL auto_increment, statut tinyint(10) NOT NULL DEFAULT '0' , pseudo char(10) NOT NULL DEFAULT '' , nom_membre char(10) NOT NULL DEFAULT '' , prenom_membre char(10) NOT NULL DEFAULT '' , societe_membre char(10) NOT NULL DEFAULT '' , adresse_memre char(10) NOT NULL DEFAULT '' , cp_membre char(10) NOT NULL DEFAULT '' , ville_membre char(10) NOT NULL DEFAULT '' , tel_membre char(10) NOT NULL DEFAULT '' , mail_membre char(10) NOT NULL DEFAULT '' , mdp_membre char(10) NOT NULL DEFAULT '' , site_membre char(100) NOT NULL DEFAULT '' , j'ai rajoute ca aussi PRIMARY KEY (id_membre), UNIQUE id_membre (id_membre), INDEX id_membre_2 (id_membre) ); # # Dumping data for table 'membre' # # # Table structure for table 'tableau' # CREATE TABLE tableau ( id_tableau int(10) unsigned NOT NULL auto_increment, nom_tableau varchar(100) NOT NULL DEFAULT '' , taille_tableau varchar(10) NOT NULL DEFAULT '' , technique_tableau varchar(10) NOT NULL DEFAULT '' , prix_loc_tableau int(10) NOT NULL DEFAULT '0' , prix_vente_tableau int(10) NOT NULL DEFAULT '0' , presence tinyint(10) NOT NULL DEFAULT '0' , id_categorie int(10) NOT NULL DEFAULT '0' , id_membre int(10) NOT NULL DEFAULT '0' , id_galerie int(10) NOT NULL DEFAULT '0' , PRIMARY KEY (id_tableau), UNIQUE id_tableau (id_tableau), INDEX id_tableau_2 (id_tableau) ); # # Dumping data for table 'tableau' # # Table structure for table 'galerie' # CREATE TABLE galerie ( id_galerie int(10) unsigned NOT NULL auto_increment, nom_galerie varchar(100) NOT NULL DEFAULT '' , nom_galerie char(10) NOT NULL DEFAULT '' , adresse_galerie char(100) NOT NULL DEFAULT '' , cp_galerie char(10) NOT NULL DEFAULT '' , ville_galerie char(10) NOT NULL DEFAULT '' , tel_galerie char(10) NOT NULL DEFAULT '' , mail_galerie char(10) NOT NULL DEFAULT '' , site_galerie char (100) NOT NULL DEFAULT '' , id_membre int(10) NOT NULL DEFAULT '0' , id_tableau int(10) NOT NULL DEFAULT '0' , PRIMARY KEY (id_galerie), UNIQUE id_galerie (id_galerie), INDEX id_galerie_2 (id_galerie) ); # Dumping data for table 'galerie' j'aurai d'autres questions aussi mais la faut que j'y aille a plus et merci Modifié 26 Février 2004 par mariepetroni
Mado Posté 26 Février 2004 Auteur Posté 26 Février 2004 si je cree dans la table tableau un ligne support_tableau (exemple toile bois papier etc) une ligne couleur tableau et une ligne theme_tableau faut il que je cree une table pour chaque couleur id_couleur nom_couleur et support id_support nom_support theme id_theme nom_theme parce que en fait les clients auront un critere de choix quand ils arriveront sur la page oeuvres criteres de choix : prix _ taille _ couleur dominante_ theme _ support la liste de ces choix, c'est bien dans les formulaires qu'ils se feront? j'ai encore un peu de mal a comprendre la mechanique merci
smile Posté 26 Février 2004 Posté 26 Février 2004 Et bien tu fais pas dans la demi-mesure Ca m'a l'air correct neanmoins, un peu trop scolaire à mon avis, ca me rappelle mes etudes de cas Merise Mais t'es sur la bonne voie
Mado Posté 26 Février 2004 Auteur Posté 26 Février 2004 (modifié) bé je suis a l'ecole moué alors c'est normal hihi c'est cool ce que tu me dis c'est ce qu'ils veulent pis si deja je comprends bien ca bé j'aurais plus qu'a progresser merci pourquoi tu me dis que je donne pas dans la demi mesure? Modifié 26 Février 2004 par mariepetroni
Anonymus Posté 26 Février 2004 Posté 26 Février 2004 Ton script pose un certain nombre de problemes. Outre le fait que tu mentionnes 2 fois "nom_galerie" dans la table "galerie", tu mets id_tableau dans cette table. Or cela signifie qu'une galerie ne peut avoir qu'un seul tableau : A la galerie n°55, le tableau n°32. C'est incohérent. Pourtant, tu mets bien id_galerie dans la table tableau : Un tableau est dans une et une seule galerie. Normal. Sinon : Pour site_membre, je te suggere d'augmenter le char(100). Il n'est pas rare d'avoir des url très longues (notamment pour les sites persos). et de mettre en varchar => varchar(255). Interet de varchar : Il prend la taille qu'il a besoin. Pour code postal : On a rarement un code postal de 10 chiffres. Mets à 5, ca devrait suffire. Pour les noms de ville (table galerie, par exemple), augmentes aussi le nombre : beaucoup de villes ont un nom de plus de 10 lettres (exemple : Clermont-Ferrand) Jettes un oeil aussi à la taille des mail_quelquechose. Avec char(10), tu ne permets 'que' 10 lettres pour une adresse email. Les adresses en webmaster-hub ont besoin d'au moins 19 lettres, c'est pour dire ! J'ai donc corrigé le id_categorie de la table categorie, en id_cat, (sinon il faut changer le nom des index partout), j'ai enlevé le nom_galerie de galerie en trop, j'ai enlevé le id_tableau dans la table galerie, j'ai modifié le id_categorie dans la table tableau, j'ai enlevé les commentaires, à toi d'augmenter la taille allouée à chaque champs, comme mentionné plus haut. Voilà. Sinon, la version corrigée de ton script SQL : CREATE TABLE categorie (id_cat int(10) unsigned NOT NULL auto_increment, nom_categorie varchar(100) NOT NULL DEFAULT '' , PRIMARY KEY (id_cat), UNIQUE id_categorie (id_cat), INDEX id_categorie_2 (id_cat) ); CREATE TABLE location_vente ( id_loc_vente int(10) unsigned NOT NULL auto_increment, type_transaction varchar(10) NOT NULL DEFAULT '' , date_debut varchar(10) NOT NULL DEFAULT '' , date_retour varchar(10) NOT NULL DEFAULT '' , montant int(10) NOT NULL DEFAULT '0' , id_membre int(10) NOT NULL DEFAULT '0' , PRIMARY KEY (id_loc_vente), UNIQUE id_loc_vente (id_loc_vente), INDEX id_loc_vente_2 (id_loc_vente) ); CREATE TABLE membre ( id_membre int(10) unsigned NOT NULL auto_increment, statut tinyint(10) NOT NULL DEFAULT '0' , pseudo char(10) NOT NULL DEFAULT '' , nom_membre char(10) NOT NULL DEFAULT '' , prenom_membre char(10) NOT NULL DEFAULT '' , societe_membre char(10) NOT NULL DEFAULT '' , adresse_memre char(10) NOT NULL DEFAULT '' , cp_membre char(10) NOT NULL DEFAULT '' , ville_membre char(10) NOT NULL DEFAULT '' , tel_membre char(10) NOT NULL DEFAULT '' , mail_membre char(10) NOT NULL DEFAULT '' , mdp_membre char(10) NOT NULL DEFAULT '' , site_membre char(100) NOT NULL DEFAULT '' , PRIMARY KEY (id_membre), UNIQUE id_membre (id_membre), INDEX id_membre_2 (id_membre) ); CREATE TABLE tableau ( id_tableau int(10) unsigned NOT NULL auto_increment, nom_tableau varchar(100) NOT NULL DEFAULT '' , taille_tableau varchar(10) NOT NULL DEFAULT '' , technique_tableau varchar(10) NOT NULL DEFAULT '' , prix_loc_tableau int(10) NOT NULL DEFAULT '0' , prix_vente_tableau int(10) NOT NULL DEFAULT '0' , presence tinyint(10) NOT NULL DEFAULT '0' , id_categorie int(10) NOT NULL DEFAULT '0' , id_membre int(10) NOT NULL DEFAULT '0' , id_galerie int(10) NOT NULL DEFAULT '0' , PRIMARY KEY (id_tableau), UNIQUE id_tableau (id_tableau), INDEX id_tableau_2 (id_tableau) ); CREATE TABLE galerie ( id_galerie int(10) unsigned NOT NULL auto_increment, nom_galerie varchar(100) NOT NULL DEFAULT '' , adresse_galerie char(100) NOT NULL DEFAULT '' , cp_galerie char(10) NOT NULL DEFAULT '' , ville_galerie char(10) NOT NULL DEFAULT '' , tel_galerie char(10) NOT NULL DEFAULT '' , mail_m char(10) NOT NULL DEFAULT '' , site_galerie char (100) NOT NULL DEFAULT '' , id_membre int(10) NOT NULL DEFAULT '0' , id_tableau int(10) NOT NULL DEFAULT '0' , PRIMARY KEY (id_galerie), UNIQUE id_galerie (id_galerie), INDEX id_galerie_2 (id_galerie) );
Mado Posté 27 Février 2004 Auteur Posté 27 Février 2004 Merci ! est ce qu'il faut que je cree un table prix aussi comme ce sera un critere de choix
Anonymus Posté 29 Février 2004 Posté 29 Février 2004 si je cree dans la table tableau un ligne support_tableau (exemple toile bois papier etc) une ligne couleur tableau et une ligne theme_tableau faut il que je cree une table pour chaque couleur id_couleur nom_couleur et support id_support nom_support theme id_theme nom_theme parce que en fait les clients auront un critere de choix quand ils arriveront sur la page oeuvres criteres de choix : prix _ taille _ couleur dominante_ theme _ support la liste de ces choix, c'est bien dans les formulaires qu'ils se feront? j'ai encore un peu de mal a comprendre la mechanique merci Non, ce seraient des tables toutes petites, mais qui demanderont trop de ressources par rapport à ce qu'elles proposeraient. Un exemple : On ne fait pas une table 'date' pour stocker les jours de la semaine (lundi, mardi,..). Il n'y en a que 7, ce n'est pas intéressant. Ce qu'il faut faire, dans ce cas, c'est créer un tableau en php, et faire une liste de choix avec un <select ...<option></option>.... . Avec ce select..option, les gens ne peuvent pas choisir quelque chose d'autre, et ca permet de ne pas avoir des tables trop vides. Pour les prix, c'est la meme chose. A moins de faire une table '1 2 3 4 5 6 ...', ce qui est 'ridicule' (excuse moi), il vaut mieux laisser les prix dans la table du tableau en question. Ainsi, lorsque tu créé un nouveau tableau, tu renseignes son nom, sa taille,.. et son prix de loc, et son prix de vente. Voilà.
Mado Posté 29 Février 2004 Auteur Posté 29 Février 2004 (modifié) ce n'est pas evident je debute, alors c'est sur je pose des questions ben qui peuvent paraitre bete le principe je suis loin de le connaitre et j'ai encore enormement de chose a apprendre, n'empeche qu'on me demande de pondre un site en php apres un mois et demi d'apprentissage alors si je comprends bien c'est le critere de choix dans le formulaire qui ira chercher dans la table_tableau tous les tableaux qui ont par exemple la couleur dominante rouge c'est ca? je vais ecrire exactement les données qui seront a ressortir par els formulaires merci Anonymus Modifié 29 Février 2004 par mariepetroni
Anonymus Posté 29 Février 2004 Posté 29 Février 2004 En fait, quand tu conçoit ton programme, tu prévois dès le départ ce genre d'informations. Les couleurs, ce sont des données 'fixes', qui ne risquent pas de bouger. Tu peux les prévoir dès le début de la conception du programme. tu créé un tableau des variables pour le tableau (euh...). On recommence : Tu créé un Array des couleurs possibles des tableaux. Par exemple : $tableau['color'][0]='rouge'; $tableau['color'][1]='bleu'; etc... Quand tu entres les données dans ta base : si le tableau est rouge, ca donne : |id_tableau|nom_tableau|couleur dominante| | 5 | la meduse de bateau | 1 | sous entendu : le tableau "la meduse de bateau, enregistré sous le numero 5, a la couleur 1. Un coup d'oeil dans les variables nous dit : $tableau['color'][1]='bleu'; donc il est bleu. Voilà.
Mado Posté 10 Mars 2004 Auteur Posté 10 Mars 2004 bonjour, le temps passe vite ca fait 8 jours que je ne suis pas venue merci Anonymus j'ai un autre probleme quand je cree un section membre faut que je cree combien de page la page config.php la page de formulaire je l'ai faite en html, parce qu'il me faut aussi des page html ensuite il faut une page php du style verif.php qui verifie que les infos pour s'inscrire sont bien entrées et une page login.php pour que la personne inscrite se connecte y'a faut d'autre? peut etre une page erreur.php ici se trouve mon formulaire mais il ne fonctionne encore pas merci en attendant http://zengrafom.org/le_site/membres/index.htm dans statut j'aurai en plus celui de galerie pis en fait je vais juste gerer pour le rendu de mon projet l'achat de tableau, la location je verrais plus tard, parce que y'a un probleme de calendier, et pas trop envie de me prendre la tete avec ca
Anonymus Posté 11 Mars 2004 Posté 11 Mars 2004 Bonjour Marie. Ton formulaire renvoie les données via POST. Tu peux créer un morceau de code, pour savoir ce que te renvoie ton formulaire. L'integration des données n'en sera que plus facile : <?foreach ($_POST as $key => $value){ echo "<br>".$key." - ".$value; }?> A+, Anonymus.
Mado Posté 12 Mars 2004 Auteur Posté 12 Mars 2004 bonsoir et merci Anonymus j'ai pas compris mais psa grave, je debute et la je pique rin enfin j'arrive un peu tout de meme svp ca veut dire quoi ce message d'erreur? Unknown column 'mpd_membre' in 'field list' mici
Anonymus Posté 12 Mars 2004 Posté 12 Mars 2004 svp ca veut dire quoi ce message d'erreur? Unknown column 'mpd_membre' in 'field list' mici cela veut dire que tu as fait une erreur de synthaxe. Au lieu d'écrire mpd_membre, tu aurais du écrire mdp_membre. a+, Anonymus.
Mado Posté 12 Mars 2004 Auteur Posté 12 Mars 2004 j'ai modifié mais ca me met ca Unknown column 'mdp' in 'where clause'
Mado Posté 14 Mars 2004 Auteur Posté 14 Mars 2004 bonsoir est ce que c'est juste ca svp merci // Redirection vers la zone membre if($statut=="artiste") echo "<meta http-equiv='refresh' content='5;URL=$memb_connect_art?id=$id_membre'>"; echo "<font size='2'>Merci, vous êtes bien enregistré. Vous avez recu un mail de confirmation avec vos données personnelles. Vous allez etre redirigé dans 5 seconde vers votre partie Membre, sinon Cliquez <a href=\"$memb_connect_art?id=$id_membre\">ici</a></font>"; } else { echo "<meta http-equiv='refresh' content='5;URL=$memb_connect?id=$id_membre'>"; echo "<font size='2'>Merci, vous êtes bien enregistré. Vous avez recu un mail de confirmation avec vos données personnelles. Vous allez etre redirigé dans 5 seconde vers votre partie Membre, sinon Cliquez <a href=\"$memb_connect?id=$id_membre\">ici</a></font>"; }
Anonymus Posté 14 Mars 2004 Posté 14 Mars 2004 Ca parait juste, seulement, il y a 3,5 lignes de répétitions. Tu peux faire ceci : $url=$memb_connect; if($statut=="artiste")$url=$memb_connect_art; echo "<meta http-equiv='refresh' content='5;URL=".$url."?id=$id_membre'>"; echo "<font size='2'>Merci, vous êtes bien enregistré."; echo" Vous avez recu un mail de confirmation avec vos données personnelles. "; echo"Vous allez etre redirigé dans 5 seconde vers votre partie Membre, sinon Cliquez "; echo"<a href=\"".$url."id=$id_membre\">ici</a></font>"; A+, Anonymus.
Mado Posté 14 Mars 2004 Auteur Posté 14 Mars 2004 (modifié) ah oui cool merci alors anonymus et ca? // Insertion dans la table $requete=mysql_db_query($sql_bdd,"insert into membre values (NOT NULL,\"$id_membre,\"$statut\",\"$pseudo\",\"$nom_membre\",\"$prenom_membre\",\"$societe_membre\",\"$adresse_membre\",\"$cp_membre\",\"$ville_membre\",\"$tel_membre\",\"$mail_membre\",\"$mdp_membre\",\"$site_membre\")",$db_link) or die(mysql_error()); c'est pareil que ca? $query='INSERT INTO membre (statut,pseudo,nom,prenom,societe, adresse,code postal,ville,telephone,mail,mot de passe) VALUES ("'.$statut.","'.pseudo.","'.nom_membre.","'.prenom_membre.", ".societe_membre.",".adresse_membre.",".cp_membre.",".ville_membre.", ".tel_membre.",".mail_membre.",".mdp_membre.","'; $result=mysql_query($query) or die (mysql_error()); echo query merci pour votre aide et lumière suis un peu perdue dans les " et les ' Modifié 14 Mars 2004 par mariepetroni
Dan Posté 15 Mars 2004 Posté 15 Mars 2004 Mado, Lorsque tu fais de la concatenation de chaînes, tu utilises le . entre les différentes chaînes et les variables. Exemple: $nom="Mado";print "bonjour ".$nom.", comment vas-tu?"; affichera: bonjour Mado, comment vas-tu? Mais dans le query, les valeurs doivent être entourées de simples quotes... comme dans: "bonjour 'Mado', comment vas-tu?" qui s'écrirait: print "bonjour '".$nom."', comment vas-tu?"; Remarques les deux simples quotes en plus Donc ton $query doit s'écrire: $query='INSERT INTO membre (statut,pseudo,nom,prenom,societe,adresse,code postal,ville,telephone,mail,mot de passe) VALUES ("'.$statut."','".$pseudo."','".$nom_membre."','".$prenom_membre."','".$societe_membre."','".$adresse_membre."','".$cp_membre."','".$ville_membre."','".$tel_membre.",".$mail_membre."','".$mdp_membre."')"; Dan
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant