<?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&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')) {
} } //création du formulaire $form = new Form(); $form->add('Text', 'pseudo')->setLabel('Nom')->setErrorText('required', 'Je veux savoir ton nom !')->addValidationRule('test'); $form->add('Email', 'mail')->setLabel('Adresse Mail'); $form->add('Text', 'sujet')->setLabel('Sujet'); $form->add('Textarea', 'message')->setLabel('Message')->cols('54%')->rows(7)->setMinLength(10); $form->add('SubmitButton', 'Envoyer')->addClass('button'); /** * * Traitement du formulaire de contact * **/ if ($_SERVER['REQUEST_METHOD'] == 'POST') { $form->bound($_POST); if ($form->isValid()) { echo 'valid form<br />'; var_dump($_POST); } else { echo 'erreur !<br />'; echo '<pre>'; var_dump($form->getErrors()); var_dump($_POST); echo '</pre>'; } } ?> <html> <head> <title>Page de test</title>
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 // détenir cet id. if ($idParent == 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
// 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 !"; } // 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)
<?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;
// 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'; // 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
<!-- 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 {