include PATH_GLOBAL_VIEW . 'error_not_connected.php'; } else { include PATH_LIB . 'form.php'; //extract infos about nabz include PATH_MODEL . 'nabz.php'; $infos_nabz = read_infos_nabz($_SESSION['id']); //Edit infos nabz form $form_edit_nabz = new Form('form_edit_nabz'); $form_edit_nabz->method('POST'); $form_edit_nabz->add('Text', 'serial')->label("Serial")->value($infos_nabz['rabbit_serial']); $form_edit_nabz->add('Text', 'token')->label("Token")->value($infos_nabz['rabbit_token']); $form_edit_nabz->add('Submit', 'submit')->initial("Modifier ces informations"); //array for errors $error_edit = array(); if ($form_edit_nabz->is_valid($_POST)) { $nabz_serial = $form_edit_nabz->get_cleaned_data('serial'); $nabz_token = $form_edit_nabz->get_cleaned_data('token'); if (!empty($nabz_serial) or !empty($nabz_token)) { $test = update_infos_nabz($_SESSION['id'], $nabz_serial, $nabz_token); if ($test == true) { $msg_confirm = "Changement(s) pris en compte."; } else { // if this email addr is already taken $error =& $test; if (23000 == $error[0]) { // Le code d'erreur 23000 signifie "doublon" dans le standard ANSI SQL preg_match("`Duplicate entry '(.+)' for key \\d+`is", $error[2], $value_pb); $value_pb = $value_pb[1]; if ($nabz_token == $value_pb) { $error_edit[] = "Ce token ou ce serial est déjà utilisé."; } else {
if (23000 == $error[0]) { // Le code d'erreur 23000 signifie "doublon" dans le standard ANSI SQL preg_match("`Duplicate entry '(.+)' for key \\d+`is", $error[2], $value_pb); $value_pb = $value_pb[1]; if ($email_addr == $value_pb) { $errors_form_infos[] = "Cette adresse e-mail est déjà utilisée."; } else { $errors_form_infos[] = "Erreur ajout SQL : doublon non identifié présent dans la base de données."; } } else { $errors_form_infos[] = sprintf("Cette adresse e-mail est déjà utilisée."); } } } //end test !empty email_addr } else { if ($form_edit_password->is_valid($_POST)) { //same password test if ($form_edit_password->get_cleaned_data('new_password') != $form_edit_password->get_cleaned_data('verif_new_password')) { $errors_form_password[] = "Les deux mots de passes entrés sont différents"; } else { $new_password = $form_edit_password->get_cleaned_data('new_password'); update_password_user($_SESSION['id'], $new_password); $msg_confirm = "Votre mot de passe a correctement été mis à jour."; } } } //end of is_valid($Post) include PATH_VIEW . 'form_edit_profile.php'; } //end of !user_connected
// On affiche la page d'erreur comme quoi l'utilisateur doit être connecté pour voir la page include CHEMIN_VUE_GLOBALE . 'erreur_non_connecte.php'; } else { // On s'assure que l'id du forum a été spécifié. if (!empty($_GET['idForum'])) { // On crée un objet form. $form_new_msg = new Form('formulaire_message'); $form_new_msg->method('POST'); $form_new_msg->add('TextArea', 'message'); $form_new_msg->add('Submit', 'submit')->value('Envoyer'); $form_new_msg->bound($_POST); $erreurs_inscription = array(); // On vérifie que notre form est valide if ($form_new_msg->is_valid($_POST)) { if (empty($erreurs_inscription)) { $message = $form_new_msg->get_cleaned_data('message'); $idMembre = $_SESSION['id'] . '<br>'; $idParent = $_GET['idParent'] . '<br>'; $idForum = $_GET['idForum'] . '<br>'; // Si l'id parent n'est pas déja une string, on le converti en int if (gettype($idParent) == "string") { $idParent = (int) $idParent; } // Si l'id parent est = 0, il est invalide puisque aucuns forums ne peuvent // détenir cet id. if ($idParent == 0) { $idParent = NULL; } include CHEMIN_LIB . 'MessageDAO.class.php'; // On ajoute et crée le message $idMessage = MessageDAO::insererCreerMessage($idMembre, $idParent, $idForum, $message);
if (user_connected()) { include PATH_GLOBAL_VIEW . 'error_already_connected.php'; } else { //Login Form include PATH_LIB . 'form.php'; $form_login = new Form('form_login'); $form_login->method('POST'); $form_login->add('Text', 'username')->label("Votre nom d'utilisateur"); $form_login->add('Password', 'password')->label("Votre mot de passe"); $form_login->add('Checkbox', 'auto_login')->required("false")->label("Connexion automatique"); $form_login->add('Submit', 'submit')->value("Connectez-moi !"); $form_login->bound($_POST); //verification of the login form $errors_login = array(); if ($form_login->is_valid($_POST)) { list($username, $password) = $form_login->get_cleaned_data('username', 'password'); $id_user = valid_login($username, sha1($password)); if (false !== $id_user) { $infos_user = read_infos_user($id_user); if (!empty($infos_user['hash_validation'])) { $errors_login[] = "Compte non validé pour recevoir à nouveau un lien d'activation : <a href=\"index.php?module=members&action=reset_pwd\"> formulaire de renvoi de lien d'activation </a> </p>"; include PATH_VIEW . 'form_login.php'; } else { $_SESSION['id'] = $id_user; $_SESSION['pseudo'] = $username; $_SESSION['email'] = $infos_user['user_mail']; up_lastconnect($id_user); //up the last_connect of user if (false !== $form_login->get_cleaned_data('auto_login')) { $browser = !empty($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; $hash_cookie = sha1('592a23516c' . $username . '3b665d692a' . sha1($password) . '307e352c2b' . $browser . '7e79437856');
//Load infos about the nabz associated to this user account $nabz_serial = $infos_nabz['rabbit_serial']; $nabz_token = $infos_nabz['rabbit_token']; $nabz_name = $infos_nabz['rabbit_name']; $id_nabz = $infos_nabz['rabbit_id']; $required = "true"; } else { $required = "false"; $nabz_serial = ""; $nabz_token = ""; } $form_edit_user->add('Text', 'nabz_serial')->label('Serial du Nabz')->required($required)->value($nabz_serial); $form_edit_user->add('Text', 'nabz_token')->label('Token du Nabz')->required($required)->value($nabz_token); $form_edit_user->add('Submit', 'submit')->value('Éditer'); if ($form_edit_user->is_valid($_POST)) { list($new_login, $new_pass, $new_email, $new_balance, $valid_account, $new_nabz_serial, $new_nabz_token) = $form_edit_user->get_cleaned_data('login', 'password', 'email_addr', 'balance', 'valid_account', 'nabz_serial', 'nabz_token'); if ($new_pass != $infos_user['user_pass']) { $new_pass = sha1($new_pass); } else { $new_pass = $infos_user['user_pass']; } if (nabz_exists($new_nabz_serial, $new_nabz_token) == true) { update_infos_nabz($id_user, $new_nabz_serial, $new_nabz_token); } else { $error_update[] = "Couple token/serial incorrect."; } //end nabz_exist $update = update_infos_user($new_login, $new_pass, $new_email, $new_balance, $id_user); if ($update[0] == 23000) { $error = ereg_replace("for key 3", "", $update[2]); $error_update[] = $error;
$erreurs_inscription[] = "Cette adresse e-mail est déjà utilisée."; } else { if (strpos($erreur[2], $nom_utilisateur) !== false) { $erreurs_inscription[] = "Ce nom d'utilisateur est déjà utilisé."; } else { $erreurs_inscription[] = "Erreur ajout SQL : doublon non identifié présent dans la base de données."; } } } else { $erreurs_form_modif_infos[] = sprintf("Erreur ajout SQL : cas non traité (SQLSTATE = %d).", $erreur[0]); } } } } else { if ($form_modif_mdp->is_valid($_POST)) { list($mdp_ancien, $mdp, $mdp_verif) = $form_modif_mdp->get_cleaned_data('mdp_ancien', 'mdp', 'mdp_verif'); $infos_utilisateur = lire_infos_utilisateur($_SESSION['id']); // TODO CORRECTIF // On vérifie si l'ancien mot de passe et les 2 nouveaux mots de passe correspondent if ($infos_utilisateur['mot_de_passe'] != sha1($mdp_ancien) || $mdp != $mdp_verif) { $erreurs_form_modif_mdp[] = "L'ancien mot de passe n'est pas bon ou les deux nouveaux mots de passes entrés sont différents !"; // C'est bon, on peut modifier la valeur dans la BDD } else { // On veut utiliser le modèle de l'inscription (~/modules/membres.php) // include CHEMIN_MODELE . 'membres.php'; maj_mot_de_passe_membre($_SESSION['id'], sha1($mdp)); $msg_confirm[] = "Votre mot de passe a été modifié avec succès !"; } } } // TODO CORRECTIF
$form_bingo->add('Submit', 'submit')->value('Modifier'); if ($form_bingo->is_valid($_POST)) { list($new_price, $new_jackpot) = $form_bingo->get_cleaned_data('bingo_ticket_price', 'bingo_jackpot'); if ($new_price < 0) { $new_price = 0; } if ($new_jackpot < 0) { $new_jackpot = 0; } if ($price != $new_price) { update_bingo_price($new_price); } if ($jackpot != $new_jackpot) { update_bingo_jackpot($new_jackpot); } } //end if valid form_bingo /*Form to distribute the jackpot */ $form_distrib = new Form("form_distrib"); $form_distrib->method('POST'); $form_distrib->add('Text', 'bingo_real_jackpot')->label("Jackpot à distribuer")->value($jackpot); $form_distrib->add('Submit', 'submit')->value("Trouver un gagnant"); if ($form_distrib->is_valid($_POST)) { $real_jackpot = $form_distrib->get_cleaned_data('bingo_real_jackpot'); $id_winner = bingo_find_winner($jackpot, $number_ticket_sold); update_winners($id_winner); init_bingo(); } //end if valid form_distrib include PATH_VIEW . 'view_bank.php'; }
// include CHEMIN_LIB . 'form.php'; // "formulaire_connexion" est l'ID unique du formulaire $form_connexion = new Form('formulaire_connexion'); $form_connexion->method('POST'); $form_connexion->add('Text', 'nom_utilisateur')->label("Votre nom d'utilisateur"); $form_connexion->add('Password', 'mot_de_passe')->label("Votre mot de passe"); // Ajout d'une case à cocher au formulaire de connexion //$form_connexion->add ('Checkbox', 'connexion_auto')->label ("Connexion automatique")->Required (false); $form_connexion->add('Submit', 'submit')->value("Connectez-moi !"); // Pré-remplissage avec les valeurs précédemment entrées (s'il y en a) $form_connexion->bound($_POST); // Création d'un tableau des erreurs $erreurs_connexion = array(); // Validation des champs suivant les règles if ($form_connexion->is_valid($_POST)) { list($nom_utilisateur, $mot_de_passe) = $form_connexion->get_cleaned_data('nom_utilisateur', 'mot_de_passe'); // On veut utiliser le modèle des membres (~/modeles/membres.php) // Déjà inclu dans init.php // include CHEMIN_MODELE . 'membres.php'; // TODO CORRECTIF // Incription du mot de passe $mot_de_passe = sha1($mot_de_passe); // combinaison_connexion_valide() est définit dans ~/modeles/membres.php $id_utilisateur = combinaison_connexion_valide($nom_utilisateur, $mot_de_passe); // TODO // Si les identifiants sont valides if (false !== $id_utilisateur) { $infos_utilisateur = lire_infos_utilisateur($id_utilisateur); // On enregistre les informations dans la session $_SESSION['id'] = $id_utilisateur; $_SESSION['pseudo'] = $nom_utilisateur;
<?php if (!user_admin()) { include PATH_GLOBAL_VIEW . 'error_not_admin.php'; } else { require_once PATH_MODEL . 'admin.php'; require_once PATH_MODEL . 'members.php'; require_once PATH_LIB . 'form.php'; $form_mail_all_user = new Form('form_mail_user'); $form_mail_all_user->method('POST'); $form_mail_all_user->add('Text', 'mail_subject')->label('Sujet du message')->value('[Nabzfood]'); $form_mail_all_user->add('Textarea', 'mail_content')->label('Message')->cols(100)->rows(20); $form_mail_all_user->add('Submit', 'Envoyer'); if ($form_mail_all_user->is_valid($_POST)) { $subject = $form_mail_all_user->get_cleaned_data('mail_subject'); $txtmessage = $_POST['mail_content']; //dont use get_cleaned because it loose the aspect of the txt $txtmessage = str_replace("\r\n", "<br \\>", $txtmessage); //replace txt \n by HTML <br /> $email_addr = list_all_email(); //do a list of all the emails of users @; @; @;... $message_mail = $txtmessage; //Send mail include './modules/mail/mail.php'; } //end of is_valid include PATH_VIEW . 'form_mail_all.php'; }
$id_nabz = $_GET['nabz_id']; $id_user = $_GET['uid']; $user_balance = user_balance($id_user); $infos_nabz = read_infos_nabz($id_user); $infos_nabz_skill = read_skill_nabz($id_nabz); $form_edit_nabz = new Form('form_edit_nabz'); $form_edit_nabz->method('POST'); $form_edit_nabz->add('Text', 'serial')->label('Serial')->value($infos_nabz['rabbit_serial']); $form_edit_nabz->add('Text', 'token')->label('Token')->value($infos_nabz['rabbit_token']); $form_edit_nabz->add('Text', 'name')->label('Nom')->value($infos_nabz['rabbit_name']); $form_edit_nabz->add('Text', 'skill_angry')->label('Faim')->value($infos_nabz_skill['skill_angry']); $form_edit_nabz->add('Text', 'skill_thirst')->label('Soif')->value($infos_nabz_skill['skill_thirst']); $form_edit_nabz->add('Text', 'skill_health')->label('Santé')->value($infos_nabz_skill['skill_health']); $form_edit_nabz->add('Submit', 'submit')->value('Éditer'); if ($form_edit_nabz->is_valid($_POST)) { list($new_nabz_serial, $new_nabz_token, $new_nabz_name, $new_skill_angry, $new_skill_thirst, $new_skill_health) = $form_edit_nabz->get_cleaned_data('serial', 'token', 'rabbit_name', 'skill_angry', 'skill_thirst', 'skill_health'); if (nabz_exists($new_nabz_serial, $new_nabz_token) == true) { update_infos_nabz($id_user, $new_nabz_serial, $new_nabz_token); } else { $error_update[] = "Couple token/serial incorrect."; } //end nabz_exist if ($new_skill_angry == $infos_nabz_skill['skill_angry']) { $new_skill_angry = $infos_nabz_skill['skill_angry']; } if ($new_skill_thirst == $infos_nabz_skill['skill_thirst']) { $new_skill_thirst = $infos_nabz_skill['skill_thirst']; } if ($new_skill_thirst == $infos_nabz_skill['skill_health']) { $new_skill_thirst = $infos_nabz_skill['skill_health']; }
$form_signup = new Form('form_signup'); $form_signup->method('POST'); $form_signup->add('Text', 'username')->label("Votre nom d'utilisateur"); $form_signup->add('Password', 'password')->label("Votre mot de passe"); $form_signup->add('Password', 'password_verif')->label("Votre mot de passe (confirmation)"); $form_signup->add('Email', 'email_addr')->label("Votre adresse email"); $form_signup->add('Submit', 'submit')->value("Valider"); $form_signup->bound($_POST); ?> <?php //Creation of an array for errors $error_signup = array(); if ($form_signup->is_valid($_POST)) { //Same password ? if ($form_signup->get_cleaned_data('password') != $form_signup->get_cleaned_data('password_verif')) { $error_signup[] = "Les deux mots de passe entrés ne sont pas identiques"; } //No more errors if (empty($error_signup)) { //From PHP doc. $hash_validation = md5(uniqid(rand(), true)); //Try to add a new user in the db list($username, $password, $email_addr) = $form_signup->get_cleaned_data('username', 'password', 'email_addr'); // On veut utiliser le modele de l'signup (~/modeles/signup.php) include PATH_MODEL . 'signup.php'; //fct add_member_in_db is defined in model/signup.php $id_user = add_member_in_db($username, sha1($password), $email_addr, $hash_validation); // Si la base de données a bien voulu ajouter l'utilisateur (pas de doublons) if (ctype_digit($id_user)) { // On transforme la chaine en entier
// "formulaire_inscription" est l'ID unique du formulaire $form_inscription = new Form('formulaire_inscription'); $form_inscription->method('POST'); $form_inscription->add('Text', 'nom_utilisateur')->label("Votre nom d'utilisateur"); $form_inscription->add('Password', 'mdp')->label("Votre mot de passe"); $form_inscription->add('Password', 'mdp_verif')->label("Votre mot de passe (vérification)"); $form_inscription->add('Email', 'adresse_email')->label("Votre adresse email"); $form_inscription->add('Submit', 'submit')->value("Je veux m'inscrire !"); // Pré-remplissage avec les valeurs précédemment entrées (s'il y en a) $form_inscription->bound($_POST); // Création d'un tableau des erreurs $erreurs_inscription = array(); // Validation des champs suivant les règles en utilisant les données du tableau $_POST if ($form_inscription->is_valid($_POST)) { // On vérifie si les 2 mots de passe correspondent if ($form_inscription->get_cleaned_data('mdp') != $form_inscription->get_cleaned_data('mdp_verif')) { $erreurs_inscription[] = "Les deux mots de passes entrés sont différents !"; } // Si d'autres erreurs ne sont pas survenues if (empty($erreurs_inscription)) { // Tire de la documentation PHP sur <http://fr.php.net/uniqid> $hash_validation = md5(uniqid(rand(), true)); // Tentative d'ajout du membre dans la base de donnees list($nom_utilisateur, $mot_de_passe, $adresse_email) = $form_inscription->get_cleaned_data('nom_utilisateur', 'mdp', 'adresse_email'); // On veut utiliser le modele de l'inscription (~/modeles/inscription.php) include CHEMIN_MODELE . 'inscription.php'; // ajouter_membre_dans_bdd() est défini dans ~/modeles/inscription.php $id_utilisateur = ajouter_membre_dans_bdd($nom_utilisateur, sha1($mot_de_passe), $adresse_email, $hash_validation); // Si la base de données a bien voulu ajouter l'utliisateur (pas de doublons) if (ctype_digit($id_utilisateur)) { // On transforme la chaine en entier
include PATH_GLOBAL_VIEW . 'error_not_connected.php'; } else { include PATH_LIB . 'form.php'; //Add Nabz form $form_add_nabz = new Form('form_add_nabz'); $form_add_nabz->method('POST'); $form_add_nabz->add('Text', 'serial')->label("Serial"); $form_add_nabz->add('Text', 'token')->label("Token"); $form_add_nabz->add('Submit', 'submit')->value("Valider"); $form_add_nabz->bound($_POST); //array for errors $error_nabz = array(); if ($form_add_nabz->is_valid($_POST)) { if (empty($error_nabz)) { //Try to add a new user in the db list($nabz_serial, $nabz_token) = $form_add_nabz->get_cleaned_data('serial', 'token'); // On veut utiliser le modele de l'nabz (~/models/nabz.php) include PATH_MODEL . 'nabz.php'; if (nabz_exists($nabz_serial, $nabz_token) == true) { $id_nabz = add_nabz_in_db($nabz_serial, $nabz_token, $_SESSION['id']); //Look if the nab is not already added. if (ctype_digit($id_nabz)) { //display confirmation of addition init_nabz_skill($id_nabz); include PATH_VIEW . 'add_nabz_done.php'; } else { $error =& $id_nabz; if (23000 == $error[0]) { // Le code d'erreur 23000 signifie "doublon" dans le standard ANSI SQL preg_match("`Duplicate entry '(.+)' for key \\d+`is", $error[2], $value_pb); $value_pb = $value_pb[1];
include PATH_GLOBAL_VIEW . 'error_not_admin.php'; } else { require_once PATH_MODEL . 'admin.php'; require_once PATH_MODEL . 'nabz.php'; require_once PATH_LIB . "nabz_lib.php"; require_once PATH_LIB . "form.php"; $form_mail_nabz = new Form('form_mail_nabz'); $form_mail_nabz->method('POST'); $form_mail_nabz->add('Textarea', 'mail_content')->label('Message')->cols(100)->rows(20); $form_mail_nabz->add('Select', 'lang_select')->label('Langue')->choices('Français', 'Anglais'); $form_mail_nabz->add('Submit', 'Envoyer'); if ($form_mail_nabz->is_valid($_POST)) { $message = $_POST['mail_content']; //dont use get_cleaned because it loose the aspect of the txt //Messages in different languages $lang = $form_mail_nabz->get_cleaned_data('lang_select'); if ($lang != 'Français') { $lang = "us"; } else { $lang = "fr"; } $tbx = list_all_rabbits(); foreach ($tbx as $key => $value) { $nabz_serial = $tbx[$key]['rabbit_serial']; $nabz_token = $tbx[$key]['rabbit_token']; //Send message with lib+API $nabaztag = new Nabaztag($nabz_serial, $nabz_token, $lang); $nabaztag->dire($message); $nabaztag->send(); } }
$value_pb = $value_pb[1]; if ($email_addr == $value_pb) { $errors_form_cat[] = "Cette catégorie existe déjà."; } else { $errors_form_cat[] = "Erreur ajout SQL : doublon non identifié présent dans la base de données."; } } else { $errors_form_cat[] = sprintf("Cette catégorie existe déjà."); } } //end of $test } //end of empty(cat_) } else { if ($form_add_product->is_valid($_POST)) { list($product_name, $product_cat, $product_desc, $product_qty, $product_portion, $product_price, $product_img, $product_health_pt, $product_angry_pt, $product_thirst_pt) = $form_add_product->get_cleaned_data('product_name', 'product_cat', 'product_description', 'product_qty', 'product_portion', 'product_price', 'product_img', 'product_health_pt', 'product_angry_pt', 'product_thirst_pt'); //want to add a product $test_product = add_product($product_name, $product_cat, $product_desc, $product_qty, $product_portion, $product_price, $product_img, $product_health_pt, $product_angry_pt, $product_thirst_pt); if ($test_product == true) { $msg_confirm[] = "Votre produit a bien était ajouté."; } else { $error =& $test; if (23000 == $error[0]) { // Le code d'erreur 23000 signifie "doublon" dans le standard ANSI SQL preg_match("`Duplicate entry '(.+)' for key \\d+`is", $error[2], $value_pb); $value_pb = $value_pb[1]; if ($email_addr == $value_pb) { $errors_form_cat[] = "Cette catégorie existe déjà."; } else { $errors_form_cat[] = "Erreur ajout SQL : doublon non identifié présent dans la base de données."; }
<?php if (!user_connected()) { include PATH_LIB . 'form.php'; $form_reset_pwd = new Form('form_reset_pwd'); $form_reset_pwd->method('POST'); $form_reset_pwd->add('Text', 'email_adress')->label('Votre adresse e-mail'); $form_reset_pwd->add('Submit', 'submit')->value('Envoyer informations'); //errors and message arrays $error_reset_pwd = array(); $msg_confirm = array(); //operations on the reset form if ($form_reset_pwd->is_valid($_POST)) { $email_addr = $form_reset_pwd->get_cleaned_data('email_adress'); $user_id = find_user_id($email_addr); if ($user_id !== false) { $new_pwd = gen_new_pwd(); //generate a new password update_password_user($user_id, $new_pwd); //update the modification $msg_confirm[] = "Mot de passe réinitialisé avec succès, vous recevrez prochainement un mél avec vos différentes informations de connexion. Attention pensez à changer le nouveau mot de passe pour le retenir plus facilement."; $infos_user = read_infos_user($user_id); // Preparation du mail $message_mail = "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\"> </head><body> <p>Nouveau mot de passe <b>NabzFood</b>.</p> <p>Vous avez demandé à changer votre mot de passe pour le site Nabzfood, ce mél est la confirmation que tout s'est bien passé.</p><p>Vos nouvelles informations de connexion : </p><p>Login : "******"</p><p>Mot de passe : " . $new_pwd . "</p>"; if (!empty($infos_user['hash_validation'])) { print_r($infos_user); $hash_validation = $infos_user['hash_validation']; $message_mail .= "<p>Lien pour valider votre compte : <a href=\"http:\\//" . $_SERVER['PHP_SELF'] . "?module=members&action=valid_account&hash=" . $hash_validation . "\">ce lien</a> pour activer votre compte !</p>"; } //end of empty hash_validation $message_mail .= "</body></html>";
TP3 --> <?php if (!utilisateur_est_connecte()) { // On affiche la page d'erreur comme quoi l'utilisateur doit être connecté pour voir la page include CHEMIN_VUE_GLOBALE . 'erreur_non_connecte.php'; } else { // On crée un objet forum $form_new_forum = new Form('formulaire_forum'); $form_new_forum->method('POST'); $form_new_forum->add('Text', 'nomForum'); $form_new_forum->add('Submit', 'submit')->value('Créer'); $form_new_forum->bound($_POST); $erreurs_creation = array(); // On s'assure qu'il est valide if ($form_new_forum->is_valid($_POST)) { // On s'ssure qu'il n'y a pas eu d'erreur en créant le forum if (empty($erreurs_creation)) { $nomForum = $form_new_forum->get_cleaned_data('nomForum'); include CHEMIN_LIB . 'ForumDAO.class.php'; // On crée le forum $nomForum = ForumDAO::creerForum($nomForum); // On affiche un message au membre. echo '<a href="index.php?module=membres&action=forum">Revenir à la page précédente</a><br>' . '<a href="index.php">Revenir à la page d\'accueil</a>'; } else { include CHEMIN_VUE . 'formulaire_forum.php'; } } else { include CHEMIN_VUE . 'formulaire_forum.php'; } }