From 117b0123aca7e5f286289975b8fc56371192fb12 Mon Sep 17 00:00:00 2001 From: Greg Burri Date: Fri, 11 Sep 2009 20:40:45 +0200 Subject: [PATCH 1/1] MOD #137 --- index.php | 13 ++++++++++--- js/cl7.js | 8 ++++---- php/connexion.php | 24 +++++++++++++++--------- php/controller.php | 32 ++++++++++++++++++-------------- php/pages/bienvenue.php | 12 +++++++++++- php/panel.php | 10 ++++------ php/participant.php | 4 ++-- 7 files changed, 64 insertions(+), 39 deletions(-) diff --git a/index.php b/index.php index 73edd6e..9f5f1e8 100644 --- a/index.php +++ b/index.php @@ -20,13 +20,17 @@ include_once("php/panel.php"); # Différents objets, sont accessibles directement par les pages (voir dossier '/php/pages/'). $page = $_GET['page'] ? $_GET['page'] : 'accueil'; -$config = new Config(); $connexion = new Connexion(); +$config = new Config(); $participant = $connexion->participant; -$controller = new Controller($participant); +$controller = new Controller($participant, $config); $panel = new Panel($participant); +if ($controller->nouvel_inscrit) + $page = "bienvenue"; + echo ''; + ?> '; message_utilisateur) echo ''; + if ($controller->message_utilisateur) + echo ''; + else if ($connexion->message_utilisateur) + echo ''; # Des constantes stockées en BD accessible par le javascript. echo ''; diff --git a/js/cl7.js b/js/cl7.js index 57766d1..f66218c 100644 --- a/js/cl7.js +++ b/js/cl7.js @@ -44,10 +44,10 @@ cl7.verification_formulaire_inscription = function(util) { }; cl7.maj_prix_inscription = function() { - var prixTotal = (int)($('meta[name="cout_total"]').attr('content')); - var prixPeriode = (int)($('meta[name="cout_periode"]').attr('content')); - var nbPeriodesTotal = (int)($('meta[name="nb_periodes"]').attr('content')); - var nbPeriodesCheck = (int)($('#formulaireInscription input[name="periodes[]"]:checked').length); + var prixTotal = parseInt($('meta[name="cout_total"]').attr('content')); + var prixPeriode = parseInt($('meta[name="cout_periode"]').attr('content')); + var nbPeriodesTotal = parseInt($('meta[name="nb_periodes"]').attr('content')); + var nbPeriodesCheck = parseInt($('#formulaireInscription input[name="periodes[]"]:checked').length); var prix = 5; if (nbPeriodesCheck === nbPeriodesTotal) { diff --git a/php/connexion.php b/php/connexion.php index e35e7fa..1bd4f92 100644 --- a/php/connexion.php +++ b/php/connexion.php @@ -7,11 +7,15 @@ include_once("participant.php"); */ class Connexion { + # Message à destination de l'utilisateur, par exemple pour lui indiquer une erreur. + public $message_utilisateur = NULL; + public $participant; - funtion Connexion() + function Connexion() { - if (!file_exists("php/config_bd.php")) { + if (!file_exists("php/config_bd.php")) + { echo "Le fichier 'php/config_bd.php' n'existe pas, création en cours...\n"; if (!is_writable(".")) { @@ -45,22 +49,24 @@ class Connexion if (isset($_POST['effacer_cookie'])) # le membre se délogue { - setcookie("COOKIE_INFO_PATICIPANT", "", time() - 100); # 'efface' le cookie membre - unset($HTTP_COOKIE_VARS["COOKIE_INFO_PATICIPANT"]); - unset($log); + setcookie("COOKIE_INFO_PARTICIPANT", "", time() - 100); # 'efface' le cookie membre + unset($_COOKIE["COOKIE_INFO_PARTICIPANT"]); } if (isset($_POST['log'])) # le membre se logue - { + { $this->participant = new Participant($_POST['pseudo'], $_POST['password']); if ($this->participant->valide) { - setcookie ("COOKIE_INFO_PATICIPANT", $this->participant->info->id, time() + 31104000); + setcookie("COOKIE_INFO_PARTICIPANT", $this->participant->info->id, time() + 31104000); + $this->message_utilisateur = "Loggation ok"; } + else + $this->message_utilisateur = "Erreur de loggation"; } - else if (isset($HTTP_COOKIE_VARS["COOKIE_INFO_PATICIPANT"])) # le cookie existe deja chez le participant + else if (isset($_COOKIE["COOKIE_INFO_PARTICIPANT"])) # le cookie existe deja chez le participant { - $this->participant = new Participant($HTTP_COOKIE_VARS["COOKIE_INFO_PATICIPANT"]); + $this->participant = new Participant($_COOKIE["COOKIE_INFO_PARTICIPANT"]); } else { diff --git a/php/controller.php b/php/controller.php index 5d83bab..b68834e 100644 --- a/php/controller.php +++ b/php/controller.php @@ -5,22 +5,26 @@ */ class Controller { - private $participant; public $message_utilisateur = NULL; + public $nouvel_inscrit = FALSE; - function Controller($participant) + private $participant; + private $config; + + public function Controller($participant, $config) { $this->participant = $participant; + $this->config = $config; # inscription d'un nouveau participant if (isset($_POST['inscription']) && !Participant::nombre_participant_max_atteint()) { - if ($config->get("inscription_terminees")) + if ($this->config->get("inscription_terminees")) return; - traiter_donnees_inscription(); - if (!login_deja_pris() && # vérification des données - donnees_inscription_valides() && + $this->traiter_donnees_inscription(); + if (!$this->login_deja_pris() && # vérification des données + $this->donnees_inscription_valides() && $_POST['accord'] == "on" ) { @@ -41,22 +45,22 @@ class Controller )" ); $id = mysql_insert_id(); - set_periodes($id); + $this->set_periodes($id); mysql_query("COMMIT"); $this->participant = new participant($_POST['pseudo'], $_POST['pass1']); - setcookie("COOKIE_INFO_PATICIPANT", $this->participant->info->id, time() + 31104000); - $page = "bienvenue"; + setcookie("COOKIE_INFO_PARTICIPANT", $this->participant->info->id, time() + 31104000); + $this->nouvel_inscrit = TRUE; } } # un participant modifie ses infos else if(isset($_POST['modification_participant']) && $this->participant->valide) { - if ($config->get("inscription_terminees")) + if ($this->config->get("inscription_terminees")) return; - traiter_donnees_inscription(); - if (!login_deja_pris() && donnees_inscription_valides()) + $this->traiter_donnees_inscription(); + if (!$this->login_deja_pris() && $this->donnees_inscription_valides()) { mysql_query("BEGIN TRANSACTION"); mysql_query("UPDATE participants SET pseudo = '".addslashes($_POST['pseudo'])."' WHERE id = " . $this->participant->info->id); @@ -68,7 +72,7 @@ class Controller mysql_query("UPDATE participants SET age = '".addslashes($_POST['age'])."' WHERE id = " . $this->participant->info->id); mysql_query("UPDATE participants SET e_mail = '".addslashes($_POST['e_mail'])."' WHERE id = " . $this->participant->info->id); mysql_query("UPDATE participants SET remarques = '".addslashes($_POST['remarques'])."' WHERE id = " . $this->participant->info->id); - set_periodes($this->participant->info->id); + $this->set_periodes($this->participant->info->id); mysql_query("COMMIT"); //header("Location: /inscrits.html"); $this->message_utilisateur = "Les modifications ont été enregistrées"; @@ -98,7 +102,7 @@ class Controller mysql_query("DELETE FROM jeux_choisis WHERE participant_id = " . $this->participant->info->id); # traite les trois premiers votes - for ($i = 0; $i < count($votes) && $i < $config->get('nb_votes_jeux'); $i++) + for ($i = 0; $i < count($votes) && $i < $this->config->get('nb_votes_jeux'); $i++) { mysql_query("INSERT INTO jeux_choisis (participant_id, jeu_id) VALUES (".$this->participant->info->id.", ".(int)$votes[$i].")"); } diff --git a/php/pages/bienvenue.php b/php/pages/bienvenue.php index 53f8929..b808985 100644 --- a/php/pages/bienvenue.php +++ b/php/pages/bienvenue.php @@ -1 +1,11 @@ -Toute l'équipe de la Corcelles-LAN vous souhaite la bienvenue !! + + +

Toute l'équipe de la Corcelles-LAN vous souhaite la bienvenue !!

+

Votre inscription a été enregistré, voici quelques liens utiles : +

+

diff --git a/php/panel.php b/php/panel.php index 21c2fa4..48d9043 100644 --- a/php/panel.php +++ b/php/panel.php @@ -12,7 +12,7 @@ class Panel function Panel($participant) { - $this->participant; + $this->participant = $participant; } function rendre() @@ -39,7 +39,7 @@ class Panel echo'

@@ -48,13 +48,11 @@ class Panel
'; } else - { - if (isset($log)) echo '[erreur de loggation]'; - + { echo'
diff --git a/php/participant.php b/php/participant.php index f7f1acf..7e549e1 100644 --- a/php/participant.php +++ b/php/participant.php @@ -24,12 +24,12 @@ class Participant $this->valide = 0; return; } - + if (is_string($v1) && is_string($v2)) # Aucun des arguments n'est vide alors c'est le pseudo et le password qui ont été transmis $res = mysql_query("SELECT * FROM participants WHERE pseudo = '" . addslashes($v1) . "' AND password = '" . addslashes($v2) . "'"); else # Sinon c'est l'id $res = mysql_query("SELECT * FROM participants WHERE id = " . addslashes($v1)); - + if (mysql_error() || mysql_num_rows($res) == 0) { $this->valide = FALSE; -- 2.45.2