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 684 vues
Syntaxe de base : balises PHP, commentaires
Introduction à la syntaxe de base en PHPPHP utilise une syntaxe simple et flexible pour écrire du code côté serveur. Commençons par explorer les balises PHP et les commentaires, deux éléments...
PHP
1 472 vues
Grid : organiser les éléments dans un système de grille
Grid : Organiser les Éléments dans un Système de GrilleCSS Grid est une méthode de disposition en CSS qui permet de créer des systèmes de grille complexes pour organiser les éléments sur une...
CSS
1 501 vues
Lien externe de feuilles de style CSS avec l'élément <link>
Lien externe de feuilles de style CSS avec l'élément <link>L'élément <link> est utilisé dans une page HTML pour lier une feuille de style CSS externe. Cela permet de séparer le...
HTML
1 541 vues
Utilisation des attributs id et class pour identifier et styler les éléments
Utilisation des attributs id et class pour identifier et styler les élémentsLes attributs id et class sont utilisés pour identifier et styler les éléments HTML en leur attribuant des...
HTML
936 vues
Modification du contenu et des styles
Modification du Contenu et des Styles des Éléments HTML en JavaScriptLa modification du contenu et des styles des éléments HTML est une tâche courante en développement web. Cela permet de...
JS
5 200 vues
Formulaire d'inscription en PHP (1/2)
Vous allez maintenant découvrir ou redécouvrir les joies de réaliser son premier formulaire d'inscription en PHP / SQL.Pour cela nous allons construire un formulaire avec des champs à remplir...
Créer son site de rencontres
1 246 vues
Utilisation de Fetch pour effectuer des requêtes HTTP
Utilisation de Fetch pour Effectuer des Requêtes HTTPLa méthode Fetch est une fonction native de JavaScript utilisée pour effectuer des requêtes HTTP vers des ressources distantes, telles que des...
JS
1 655 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 ...