Après avoir créé notre page profil, nous allons créer une nouvelle page afin de modifier certaines données de l'utilisateur !

La modification d'un profil se fait également par un formulaire ! Je pense que vous devez commencer à être familiarisé avec les formulaires !


Page modifier-profil.php


<?php
    session_start();
    include('bd/connexionDB.php');

    if (!isset($_SESSION['id'])){
        header('Location: index.php');
        exit;
    }

    // On récupère les informations de l'utilisateur connecté
    $afficher_profil = $DB->query("SELECT * 
        FROM utilisateur 
        WHERE id = ?",
        array($_SESSION['id']));
    $afficher_profil = $afficher_profil->fetch();

    if(!empty($_POST)){
        extract($_POST);
        $valid = true;

        if (isset($_POST['modification'])){
            $nom = htmlentities(trim($nom));
            $prenom = htmlentities(trim($prenom));
            $mail = htmlentities(strtolower(trim($mail)));

            if(empty($nom)){
                $valid = false;
                $er_nom = "Il faut mettre un nom";
            }

            if(empty($prenom)){
                $valid = false;
                $er_prenom = "Il faut mettre un prénom";
            }

            if(empty($mail)){
                $valid = false;
                $er_mail = "Il faut mettre un mail";

            }elseif(!preg_match("/^[a-z0-9\-_.]+@[a-z]+\.[a-z]{2,3}$/i", $mail)){
                $valid = false;
                $er_mail = "Le mail n'est pas valide";

            }else{
                $req_mail = $DB->query("SELECT mail 
                    FROM utilisateur 
                    WHERE mail = ?",
                    array($mail));
                $req_mail = $req_mail->fetch();

                if ($req_mail['mail'] <> "" && $_SESSION['mail'] != $req_mail['mail']){
                    $valid = false;
                    $er_mail = "Ce mail existe déjà";
                }
            }

            if ($valid){

                $DB->insert("UPDATE utilisateur SET prenom = ?, nom = ?, mail = ? 
                    WHERE id = ?", 
                    array($prenom, $nom,$mail, $_SESSION['id']));

                $_SESSION['nom'] = $nom;
                $_SESSION['prenom'] = $prenom;
                $_SESSION['mail'] = $mail;

                header('Location:  profil.php');
                exit;
            }   
        }
    }
?>


<!DOCTYPE html>
<html lang="fr">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Modifier votre profil</title>
    </head>
    <body>      
        <div>Modification</div>
        <form method="post">
            <?php
                if (isset($er_nom)){
                ?>
                    <div><?= $er_nom ?></div>
                <?php   
                }
            ?>
            <input type="text" placeholder="Votre nom" name="nom" value="<?php if(isset($nom)){ echo $nom; }else{ echo $afficher_profil['nom'];}?>" required>   
            <?php
                if (isset($er_prenom)){
                ?>
                    <div><?= $er_prenom ?></div>
                <?php   
                }
            ?>
            <input type="text" placeholder="Votre prénom" name="prenom" value="<?php if(isset($prenom)){ echo $prenom; }else{ echo $afficher_profil['prenom'];}?>" required>   
            <?php
                if (isset($er_mail)){
                ?>
                    <div><?= $er_mail ?></div>
                <?php   
                }
            ?>
            <input type="email" placeholder="Adresse mail" name="mail" value="<?php if(isset($mail)){ echo $mail; }else{ echo $afficher_profil['mail'];}?>" required>
            <button type="submit" name="modification">Modifier</button>
        </form>
    </body>
</html>
+99999
Modifié le 04 mars 2019
Publicité Sitedudev
Cette pub permet au site de vivre ...
Vidéo associée
Publicité Sitedudev
Cette pub permet au site de vivre ...
Télécharger le code source
Publicité
Cette pub permet au site de vivre ...
Voir d'autres articles
1 179 vues
Tableaux indexés
Les tableaux indexés en PHP sont des structures de données qui permettent de stocker plusieurs valeurs dans une seule variable. Chaque valeur est associée à un indice numérique, à partir de...
PHP
3 085 vues
Différences entre SASS et CSS
Différences entre SASS et CSS1. Syntaxe :CSS : Utilise une syntaxe simple basée sur des sélecteurs et des propriétés.SASS : Propose une syntaxe étendue avec des fonctionnalités telles que les...
Sass
6 043 vues
Afficher la liste des catégories
Pour commencer nous allons créer la page maître de notre forum. C'est cette page qui contiendra les différentes catégories.Tout d'abord nous allons créer un dossier que nous...
Créer son site
1 035 vues
Utilisation de styles en ligne avec l'attribut style
Utilisation de styles en ligne avec l'attribut styleL'attribut style permet de définir des styles CSS directement à l'intérieur des balises HTML. Cela permet d'appliquer des styles spécifiques à...
HTML
3 739 vues
Configuration de PhpMyAdmin pour se connecter à votre serveur de base de données
1. Accéder au Fichier de Configuration :Après avoir téléchargé et installé PhpMyAdmin sur votre serveur, accédez au répertoire où PhpMyAdmin est installé.Cherchez le fichier de...
SQL
790 vues
Fonctions anonymes et fonctions fléchées
Fonctions Anonymes et Fonctions Fléchées en JavaScript1. Fonctions Anonymes :Une fonction anonyme est une fonction définie sans nom. Elles sont souvent utilisées comme fonctions de rappel...
JS
936 vues
Utilisation de l'élément <li> pour les éléments de liste
Utilisation de l'élément <li> pour les éléments de listeL'élément <li> est utilisé pour définir chaque élément individuel d'une liste, qu'elle soit ordonnée <ol> ou non...
HTML
1 492 vues
Gestion des événements : click, submit, keydown, etc.
Gestion des Événements en JavaScriptLa gestion des événements en JavaScript permet d'interagir avec les actions de l'utilisateur sur une page web, telles que les clics de souris, les soumissions...
JS
Publicité
Cette pub permet au site de vivre ...