Beispiel #1
0
                 } 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
 // Affichage des formulaires de modification du profil
Beispiel #2
0
<!--
    William Tremblay & Nicholas-David Labarre
    Cours 420-306-LI
    TP3
-->
<?php 
// Pas de vérification de droits d'accès nécessaire : tout le monde peut voir un profil utilisateur :)
// Si le paramètre id est manquant ou invalide
if (empty($_GET['id']) or !is_numeric($_GET['id'])) {
    include CHEMIN_VUE . 'erreur_parametre_profil.php';
} else {
    // On veut utiliser le modèle des membres (~/modules/membres.php)
    // Plus besoin on l'inclu dans le fichier init.php
    // include CHEMIN_MODELE . 'membres.php';
    // lire_infos_utilisateur() est défini dans ~/modules/membres.php
    $infos_utilisateur = lire_infos_utilisateur($_GET['id']);
    // Si le profil existe et que le compte est validé
    if (false !== $infos_utilisateur && $infos_utilisateur['hash_validation'] == '') {
        $nom_utilisateur = $infos_utilisateur['nom_utilisateur'];
        $adresse_email = $infos_utilisateur['adresse_email'];
        $date_inscription = $infos_utilisateur['date_inscription'];
        include CHEMIN_VUE . 'profil_infos_utilisateur.php';
        // Si l'utilisateur a écrit des messages, on les affiche
        if (MessageDAO::getMessagesMembre($_GET['id']) != null) {
            include CHEMIN_VUE . 'profil_messages_utilisateur.php';
            MessageDAO::afficherMessagesMembre(MessageDAO::getMessagesMembre($_GET['id']));
        } else {
            // Sinon, on affiche un message d'erreur indiquant que le membre n'a participé à
            // aucun forums, pour l'instant!
            include CHEMIN_VUE . 'aucun_messages_utilisateur.php';
        }
Beispiel #3
0
// 		$value = stripslashes ($value);
// 	}
// 	array_walk_recursive ($_GET, 'remove_magic_quotes_gpc');
// 	array_walk_recursive ($_POST, 'remove_magic_quotes_gpc');
// 	array_walk_recursive ($_COOKIE, 'remove_magic_quotes_gpc');
// }
// Vérifie si l'utilisateur est connecté
function utilisateur_est_connecte()
{
    return !empty($_SESSION['id']);
}
// Vérifications pour la connexion automatique
// On a besoin du modèle des membres
include_once CHEMIN_MODELE . 'membres.php';
// Le mec n'est pas connecté mais les cookies sont là, on y va !
if (!utilisateur_est_connecte() && !empty($_COOKIE['id']) && !empty($_COOKIE['connexion_auto'])) {
    $infos_utilisateur = lire_infos_utilisateur($_COOKIE['id']);
    if (false !== $infos_utilisateur) {
        $navigateur = !empty($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
        $hash = sha1('aaa' . $infos_utilisateur['nom_utilisateur'] . 'bbb' . $infos_utilisateur['mot_de_passe'] . 'ccc' . $navigateur . 'ddd');
        if ($_COOKIE['connexion_auto'] == $hash) {
            // On enregistre les informations dans la session
            $_SESSION['id'] = $_COOKIE['id'];
            $_SESSION['pseudo'] = $infos_utilisateur['nom_utilisateur'];
            $_SESSION['email'] = $infos_utilisateur['adresse_email'];
        }
    }
}
// Ces lignes ont été remplacé par "spl_autoload_register" ci-haut
// Inclusion de Pdo2, potentiellement utile partout
// include CHEMIN_LIB . 'Pdo2.class.php';
Beispiel #4
0
 $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;
         $_SESSION['email'] = $infos_utilisateur['adresse_email'];
         // Mise en place des cookies de connexion automatique
         // 			if (false != $form_connexion->get_cleaned_data ('connexion_auto'))
         // 			{
         // 				$navigateur = (!empty ($_SERVER ['HTTP_USER_AGENT'])) ? $_SERVER ['HTTP_USER_AGENT'] : '';
         // 				$hash_cookie = sha1 ('aaa' . $nom_utilisateur . 'bbb' . $mot_de_passe . 'ccc' . $navigateur . 'ddd');
         // 				setcookie ('id', $_SESSION ['id'], strtotime ("+1 year"), '/');
         // 				setcookie ('connexion_auto', $hash_cookie, strtotime ("+1 year"), '/');
         // 			}
         // Affichage de la confirmation de la connexion
         include CHEMIN_VUE . 'connexion_ok.php';
     } else {