Example #1
0
<?php

if (!user_connected() || !verify_get_id($_GET['id'], $_SESSION['id'])) {
    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];
Example #2
0
//only display this page if user is connected
if (!user_connected() || !verify_get_id($_GET['id'], $_SESSION['id'])) {
    include PATH_GLOBAL_VIEW . 'error_not_connected.php';
} else {
    include PATH_LIB . 'form.php';
    //extract infos about the nabz
    //$infos_nabz = read_infos_nabz($_GET['id']);
    //Edit infos form
    $form_edit_infos = new Form('form_edit_infos');
    $form_edit_infos->method('POST');
    $form_edit_infos->add('Email', 'email_addr')->label('Votre adresse e-mail')->Required(false)->value($_SESSION['email']);
    $form_edit_infos->add('Submit', 'submit')->initial('Modifier ces informations');
    //Edit password form
    $form_edit_password = new Form('form_edit_password');
    $form_edit_password->method('POST');
    $form_edit_password->add('Password', 'old_password')->label('Votre ancien mot de passe');
    $form_edit_password->add('Password', 'new_password')->label('Votre nouveau mot de passe');
    $form_edit_password->add('Password', 'verif_new_password')->label('Confirmation nouveau mot de passe');
    $form_edit_password->add('Submit', 'submit')->initial('Modifier mon mot de passe');
    //Errors array
    $errors_form_infos = array();
    $errors_form_password = array();
    //Message array
    if (!empty($_POST['message'])) {
        $msg_confirm = $_POST['message'];
    }
    //Retrieve the message confirmation if is not empty
    if ($form_edit_infos->is_valid($_POST)) {
        $email_addr = $form_edit_infos->get_cleaned_data('email_addr');
        //user wants to update his email
Example #3
0
\t\t\t<meta http-equiv="X-UA-Compatible" content="IE=edge">
\t\t\t<meta name="viewport" content="width=device-width, initial-scale=1">        
\t\t\t<link rel="stylesheet" href="style.css" />
\t\t\t\t<title> - My Webpage</title>
\t\t<link rel="stylesheet" type="text/css" href="app/assets/bootstrap/css/bootstrap.min.css">
\t\t<link rel="stylesheet" type="text/css" href="app/assets/bootstrap/css/bootstrap-theme.css"> 
\t\t<script src="app/assets/bootstrap/js/jquery.min.js"></script>
\t\t<script src="app/assets/bootstrap/js/bootstrap.min.js"></script>  
\t</head>
\t<body>
\t<div class="container">
EOT;
$f = new Form();
$f->name('test_form');
$f->action('test/index.php');
$f->method('PUT');
$f->create('static', 'id', array('label' => 'PK'));
$f->create('text', 'first_name', array('label' => 'First Name'));
$f->create('text', 'last_name', array('label' => 'Last Name'));
$f->create('password', 'lpass', array('label' => 'Your Password'));
$f->create('textarea', 'comment', array('label' => 'Enter Your Comment'));
$f->create('file', 'file1', array('label' => 'Select a File to upload'));
$f->create('checkbox', 'check1', array('label' => 'Rememer'));
$f->create('checkbox', 'check2', array('label' => 'Clear'));
$f->create('radio', 'r1', array('label' => 'IE9', 'name' => 'g1'));
$f->create('radio', 'r2', array('label' => 'IE10 ...', 'name' => 'g1'));
$f->create('checkbox-inline', 'line1', array(array('label' => 'Rememer1'), array('label' => 'Rememer2'), array('label' => 'Rememer3')));
$f->create('radio-inline', 'lr1', array(array('label' => 'Rememer1', 'value' => '1'), array('label' => 'Rememer2', 'value' => '2'), array('label' => 'Rememer3', 'value' => '3')));
echo $f->html();
echo <<<EOT
</div>
Example #4
0
<?php

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&amp;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')) {
Example #5
0
<?php

if (!user_admin()) {
    include PATH_GLOBAL_VIEW . 'error_not_admin.php';
} else {
    include PATH_LIB . 'form.php';
    require_once PATH_MODEL . 'admin.php';
    require_once PATH_MODEL . 'members.php';
    //include the two models to not rewrite functions that already exist
    require_once PATH_MODEL . 'nabz.php';
    $id_user = $_GET['uid'];
    $infos_user = read_infos_user($id_user);
    $user_balance = user_balance($id_user);
    $infos_nabz = read_infos_nabz($id_user);
    $form_edit_user = new Form('form_edit_user');
    $form_edit_user->method('POST');
    $form_edit_user->add('Text', 'login')->label('Login')->value($infos_user['user_pseudo']);
    $form_edit_user->add('Text', 'password')->label('Mot de passe')->value($infos_user['user_pass']);
    $form_edit_user->add('Text', 'email_addr')->label('Email')->value($infos_user['user_mail']);
    $form_edit_user->add('Text', 'balance')->label('Solde')->value($user_balance);
    if (empty($infos_user['hash_validation'])) {
        $valid_opt = 0;
    } else {
        $valid_opt = 1;
    }
    $form_edit_user->add('Checkbox', 'valid_account')->label('Compte validé')->value($valid_opt)->required('false');
    /*Nabz Infos Part*/
    //modify an existing nabz or add it to an account user
    if ($infos_nabz !== false) {
        //Load infos about the nabz associated to this user account
        $nabz_serial = $infos_nabz['rabbit_serial'];
Example #6
0
<!--
    William Tremblay & Nicholas-David Labarre
    Cours 420-306-LI
    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 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
Example #7
0
    $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';
}
Example #8
0
    William Tremblay & Nicholas-David Labarre
    Cours 420-306-LI
    TP3
-->
<?php 
// Vérification des droits d'accès de la page
if (utilisateur_est_connecte()) {
    // On affiche la page d'erreur comme quoi l'utilisateur est déjà connecté
    include CHEMIN_VUE_GLOBALE . 'erreur_deja_connecte.php';
} else {
    // Ne pas oublier d'inclure la librairie Form
    // Plus besoin
    // 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';
Example #9
0
<?php

//display this page only if the user is connected
if (!user_connected() || !verify_get_id($_GET['id'], $_SESSION['id'])) {
    include PATH_GLOBAL_VIEW . 'error_not_connected.php';
} else {
    include PATH_LIB . 'form.php';
    //Confirm deletetion form
    $form_delete_nabz = new Form('form_delete_nabz');
    $form_delete_nabz->method('POST');
    $form_delete_nabz->add('Submit', 'submit')->initial('Confirmer la suppression de mon lapin');
    if ($form_delete_nabz->is_valid($_POST)) {
        include PATH_MODEL . 'nabz.php';
        $infos_nabz = read_infos_nabz($_SESSION['id']);
        $id_nabz = $infos_nabz['rabbit_id'];
        delete_nabz($id_nabz);
        include PATH_VIEW . 'delete_nabz_done.php';
    } else {
        include PATH_VIEW . 'form_delete_nabz.php';
    }
}
//end of user_connected
Example #10
0
<?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';
}
Example #11
0
<?php

//only display this page if user is not connected
if (user_connected()) {
    include PATH_GLOBAL_VIEW . 'error_already_connected.php';
} else {
    include PATH_LIB . 'form.php';
    //Signup Form
    $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
Example #12
0
    William Tremblay & Nicholas-David Labarre
    Cours 420-306-LI
    TP3
-->
<?php 
// Vérification des droits d'accès de la page
if (utilisateur_est_connecte()) {
    // On affiche la page d'erreur comme quoi l'utilisateur est déjà connecté
    include CHEMIN_VUE_GLOBALE . 'erreur_deja_connecte.php';
} else {
    // Ne pas oublier d'inclure la librarie Form
    // Plus besoin car on utilise l'autoload...
    // include CHEMIN_LIB . 'form.php';
    // "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 !";
        }
Example #13
0
<?php

//Only display this page is user is connected
if (!user_connected() || !verify_get_id($_GET['id'], $_SESSION['id'])) {
    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;
Example #14
0
<?php

if (!user_admin()) {
    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);
Example #15
0
if (!user_admin()) {
    include PATH_GLOBAL_VIEW . 'error_not_admin.php';
} else {
    include PATH_LIB . 'form.php';
    include PATH_MODEL . 'admin.php';
    //Add a category of product
    $form_add_cat = new Form('form_add_cat');
    $form_add_cat->method('POST');
    $form_add_cat->add('Text', 'cat_name')->label('Nom de la catégorie');
    $form_add_cat->add('Text', 'cat_description')->label('Description de la catégorie');
    $form_add_cat->add('Text', 'cat_image')->label('URL de l\'image de la catégorie');
    $form_add_cat->add('Submit', 'submit')->value('Valider');
    //Add a product
    $form_add_product = new Form('form_add_product');
    $form_add_product->method('POST');
    $choice_cat = load_cat();
    $form_add_product->add('Text', 'product_name')->label('Nom du produit');
    $form_add_product->add('Select', 'product_cat')->label('Catégorie du produit')->choices($choice_cat);
    $form_add_product->add('Text', 'product_description')->label('Description du produit');
    $form_add_product->add('Text', 'product_qty')->label('Quantité du produit');
    $form_add_product->add('Text', 'product_portion')->label('Nombre de portions par produit');
    $form_add_product->add('Text', 'product_price')->label('Prix du produit');
    $form_add_product->add('Text', 'product_img')->label('Image du produit');
    $form_add_product->add('Text', 'product_health_pt')->label('Point de santé du produit');
    $form_add_product->add('Text', 'product_angry_pt')->label('Point de faim du produit');
    $form_add_product->add('Text', 'product_thirst_pt')->label('Point de soif du produit');
    $form_add_product->add('Submit', 'submit')->value('Valider');
    //Errors array
    $errors_form_cat = array();
    $errors_form_product = array();
Example #16
0
<?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&amp;action=valid_account&amp;hash=" . $hash_validation . "\">ce lien</a> pour activer votre compte !</p>";
            }
            //end of empty hash_validation
            $message_mail .= "</body></html>";
Example #17
0
<!--
    William Tremblay & Nicholas-David Labarre
    Cours 420-306-LI
    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 {