Accueil   |   Forums   |  Offres d'emplois   |  Contact    |   Mon compte   
samedi 17 mai 2008 Rechercher :
Déposez votre CV gratuitement sur touslesemplois
 
comparer les prix
» Logiciels
» Jeux vidéos
» Matériel Informatique


» ASP.NET
» ASP
» SQL
» PHP
» JAVASCRIPT
» XML
 


» ACTUALITÉ / DIVERS
» DROIT DE L'INTERNET
» INFOS VIRUS
» PATCHS MICROSOFT
» SÉCURITÉ
» BASES DE DONNÉES
» DOWNLOAD .NET
» LOGITHÈQUE
» SERVICES WEB
» Y SONT FOUS !
» .NET
» ASP
» ASP.NET
» JAVA
» PHP
» XML
» LANGAGE C#
» LANGAGE VB.NET
» UNIX / LINUX
» WINDOWS
» EVÈNEMENTS
» GASP
» MICROSOFT
 


Vous êtes ici : Forums > Langage PHP > Comment créer les tables pour un concours par choix de critères

Comment créer les tables pour un concours par choix de critères
Bonsoir,

Je suis débutante et je suis en train d'essayer de mettre au point un petit concours où des gens peuvent s'inscrire (sans système de session ni mot de passe) et où des visiteurs non-inscrits peuvent choisir un ou plusieurs critères (par checkbox) parmi un certain nombre déjà définis (ici, il y en a quatre, tous les mêmes pour tous les inscrits) pour une seule nana et un seul gars chacun.

Plus de précisions :
Il y a l'inscrit, qui diffère selon si c'est une nana ou un gars. Le choix dans la table `concours_inscrits` est 'n' pour nana et 'g' pour gars via le champ `inscrit_sexe` qui a 'a' pour valeur par défaut et dont je valide ou non l'inscription avec le champ `inscrit_valid` qui a une valeur de '0' par défaut et qui prend '1' quand c'est validé.
Cet inscrit, a accès à sa fiche via la liste des inscrits nana ou la liste gars selon son sexe, les votants (non-inscrits) y ont accès aussi, pour pouvoir voter.
Sur cette fiche, il y a donc le pseudo de l'inscrit, son sexe en rappel, sa description, et un formulaire pour que le votant (le non-inscrit) puisse choisir les critères de l'inscrit.
Pour l'instant, l'inscription, la page de la liste des nanas ainsi que celle des gars et l'affichage des fiches individuelles avec formulaire sont au point.

J'aimerais savoir si mes tables sont bien structurées pour ce genre de projet :

[code]-- Structure de la table `concours_inscrits`
--

CREATE TABLE `concours_inscrits` (
`inscrit_id` int(11) NOT NULL auto_increment,
`inscrit_ip` varchar(15) NOT NULL default '',
`inscrit_pseudo` varchar(50) NOT NULL default '',
`inscrit_description` text NOT NULL,
`inscrit_email` varchar(250) NOT NULL default '',
`inscrit_sexe` enum('a','n','g') NOT NULL default 'a',
`inscrit_valid` bigint(1) default '0',
PRIMARY KEY (`inscrit_id`),
KEY `id` (`inscrit_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=57 ;

--
-- Contenu de la table `concours_inscrits`
--

INSERT INTO `concours_inscrits` VALUES (3, '234.16.8.10', 'Truc', 'pouet', '', 'n', 1);
INSERT INTO `concours_inscrits` VALUES (8, '227.38.32.25', 'Bidule', 'truc', '', 'g', 1);
INSERT INTO `concours_inscrits` VALUES (10, '121.58.78.36', 'Machine', 'description', '', 'n', 1);
INSERT INTO `concours_inscrits` VALUES (13, '223.30.75.13', 'Agaga', 'bidule', '', 'g', 1);
INSERT INTO `concours_inscrits` VALUES (14, '245.42.57.17', 'Shoobeedoo', 'Petite description pour voir comment marche le script', '', 'n', 1);
INSERT INTO `concours_inscrits` VALUES (15, '127.0.0.1', 'dudul', 'description de dudul', '', 'g', 1);
INSERT INTO `concours_inscrits` VALUES (21, '127.0.0.1', 'Machin', 'youpla', '', 'g', 1);
INSERT INTO `concours_inscrits` VALUES (22, '127.0.0.1', 'boubou', 'bouiboui', '', 'n', 1);
INSERT INTO `concours_inscrits` VALUES (56, '127.0.0.1', 'Doudoudidon', ' Parlez un peu de vous..\r\nok', 'truc@mail.fr', 'n', 1);

-- --------------------------------------------------------

--
-- Structure de la table `concours_criteres`
--

CREATE TABLE `concours_criteres` (
`critere_id` int(11) NOT NULL auto_increment,
`critere_nom` varchar(50) NOT NULL default '',
PRIMARY KEY (`critere_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

--
-- Contenu de la table `concours_criteres`
--

INSERT INTO `concours_criteres` VALUES (1, 'Bon animateur');
INSERT INTO `concours_criteres` VALUES (2, 'Assez à l''écoute');
INSERT INTO `concours_criteres` VALUES (3, 'Répondant aux demandes d''aide');
INSERT INTO `concours_criteres` VALUES (4, 'Toujours courtois');

-- --------------------------------------------------------

--
-- Structure de la table `concours_votants`
--

CREATE TABLE `concours_votants` (
`votant_id` int(11) NOT NULL auto_increment,
`votant_ip` varchar(15) NOT NULL default '',
`votant_email` varchar(250) NOT NULL default '',
PRIMARY KEY (`votant_id`),
KEY `id` (`votant_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;

--
-- Contenu de la table `concours_votants`
--

INSERT INTO `concours_votants` VALUES (1, '129.38.82.50', 'pouet@mail.com');
INSERT INTO `concours_votants` VALUES (4, '127.0.0.1', 'pouet2@mail.com');
INSERT INTO `concours_votants` VALUES (5, '127.0.0.1', 'cpouet3@mail.fr');

-- --------------------------------------------------------

--
-- Structure de la table `concours_insc_crit_vot`
--

CREATE TABLE `concours_insc_crit_vot` (
`icv_crit_id` int(11) NOT NULL default '0',
`icv_votant_id` int(11) NOT NULL default '0',
`icv_inscrit_id` int(11) NOT NULL default '0',
`icv_valeur` char(1) NOT NULL default '0',
PRIMARY KEY (`icv_crit_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;[/code]

j'espère que je n'ai pas été trop floue.

Merci d'avance.

Clicky

Message posté le 26/08/2007 par Clicky

Répondre à ce message
 
AuteurRéponse 
Clicky
05/09/2007 14:19:36
[RESOLU] : Comment créer les tables pour un concours par choix de critères
Bonjour,

Problème résolu avec :

foreach ($_POST['critere_nom'] as $key=>$critere){
$values = '( NULL , "' .
mysql_real_escape_string(htmlentities($_POST['votant_id'])) . '", "' .
mysql_real_escape_string(htmlentities($_POST['inscrit_id'])) . '", "' .
mysql_real_escape_string(htmlentities($critere)) .'")';
$req = "INSERT INTO concours_insc_crit_vot
(icv_id, icv_votant_id, icv_inscrit_id, icv_valeur)
VALUES ".$values.';';

$result = mysql_query($req)
or die ("erreur sql : Impossible de sauvegarder les données. ".mysql_error());
}

Bonne journée. ...
Répondre


Proregna - L'hébergement ASP.NET


A RETENIR CETTE SEMAINE
16/05/2008 - Logiciels Microsoft gratuits pour les étudiants
Vous êtes étudiant ? N’attendez pas pour télécharger* gratuitement et utiliser les derniers logiciel ...
16/05/2008 - Lillois, ne manquez pas les Wygdays 2008
Le 22 mai prochain à Lille, vous êtes invité à un événement unique dédié aux développeurs, organisé ...
16/05/2008 - Flash 10 est dans les bacs, Silverlight prend du retard
On est peut-être à un tournant très important de la bataille que se livrent Microsoft et Adobe sur l ...
15/05/2008 - Comment manipuler simplement le contenu d'un fichier WordML ?
Le format WordML (et plus largement OpenXML ) est une grande avancée: il permet de manipuler les doc ...
15/05/2008 - Package d'installation réseau de Windows XP Service Pack 3 pour les informaticiens
Ce package d'installation est destiné à permettre aux informaticiens et aux développeurs de configur ...
15/05/2008 - Mono supporte désormais Windows Forms et Silverlight
Jour de gloire pour le projet Mono. Miguel de Icaza annonce tout d'abord sur son blog la première re ...
14/05/2008 - Deux Services Packs en bêta pour Visual Studio
Microsoft annonce deux Services Packs en version bêta pour Visual Studio 2008 et pour le framework . ...
(c) 1999-2006 ASP MAGAZINE SARL
Partenaires : Codes sources c2i ASP-PHP
Hébergement serveurs dédiés Windows


Hit-Parade