first commit
This commit is contained in:
74
controler/actionModif.php
Normal file
74
controler/actionModif.php
Normal file
@@ -0,0 +1,74 @@
|
||||
<?php
|
||||
// actionModif.php
|
||||
|
||||
if (!isset($_SESSION['pseudo'])) {
|
||||
header("Location: login.php");
|
||||
exit;
|
||||
}
|
||||
|
||||
$pseudo = $_SESSION['pseudo'];
|
||||
$message = '';
|
||||
|
||||
// D'ABORD récupérer les infos utilisateur (OBLIGATOIRE)
|
||||
$stmt = $mysqli->prepare("SELECT id, nom, prenom, age, email, datecreation FROM utilisateur WHERE pseudo = ?");
|
||||
$stmt->bind_param("s", $pseudo);
|
||||
$stmt->execute();
|
||||
$stmt->bind_result($id, $nom, $prenom, $age, $email, $date);
|
||||
$stmt->fetch();
|
||||
$stmt->close();
|
||||
|
||||
// ENSUITE traitement du formulaire de modification
|
||||
if ($_POST) {
|
||||
$nouveau_nom = $_POST['nom'];
|
||||
$nouveau_prenom = $_POST['prenom'];
|
||||
$nouvel_email = $_POST['email'];
|
||||
$nouvel_age = $_POST['age'];
|
||||
|
||||
// Vérification des mots de passe
|
||||
$mdp_valide = true;
|
||||
if (!empty($_POST['nouveau_mdp'])) {
|
||||
if (empty($_POST['confirmer_mdp'])) {
|
||||
$message = "Veuillez confirmer le nouveau mot de passe.";
|
||||
$mdp_valide = false;
|
||||
} elseif ($_POST['nouveau_mdp'] !== $_POST['confirmer_mdp']) {
|
||||
$message = "Les mots de passe ne correspondent pas.";
|
||||
$mdp_valide = false;
|
||||
} elseif (strlen($_POST['nouveau_mdp']) < 6) { // rr
|
||||
$message = "Le mot de passe doit contenir au moins 6 caractères.";
|
||||
$mdp_valide = false;
|
||||
}
|
||||
}
|
||||
|
||||
if ($mdp_valide) {
|
||||
// Si un nouveau mot de passe est fourni
|
||||
if (!empty($_POST['nouveau_mdp'])) {
|
||||
$nouveau_mdp = password_hash($_POST['nouveau_mdp'], PASSWORD_DEFAULT);
|
||||
$stmt = $mysqli->prepare("UPDATE utilisateur SET nom = ?, prenom = ?, email = ?, age = ?, motdepasse = ? WHERE id = ?");
|
||||
$stmt->bind_param("sssisi", $nouveau_nom, $nouveau_prenom, $nouvel_email, $nouvel_age, $nouveau_mdp, $id);
|
||||
} else {
|
||||
$stmt = $mysqli->prepare("UPDATE utilisateur SET nom = ?, prenom = ?, email = ?, age = ? WHERE id = ?");
|
||||
$stmt->bind_param("sssii", $nouveau_nom, $nouveau_prenom, $nouvel_email, $nouvel_age, $id);
|
||||
}
|
||||
|
||||
if ($stmt->execute()) {
|
||||
$message = "Informations mises à jour avec succès !";
|
||||
// Actualiser les variables pour l'affichage
|
||||
$nom = $nouveau_nom;
|
||||
$prenom = $nouveau_prenom;
|
||||
$email = $nouvel_email;
|
||||
$age = $nouvel_age;
|
||||
} else {
|
||||
$message = "Erreur lors de la mise à jour: " . $mysqli->error;
|
||||
}
|
||||
$stmt->close();
|
||||
}
|
||||
}
|
||||
|
||||
// Compter les événements
|
||||
$stmt = $mysqli->prepare("SELECT COUNT(*) FROM inscription WHERE id_utilisateur = ?");
|
||||
$stmt->bind_param("i", $id);
|
||||
$stmt->execute();
|
||||
$stmt->bind_result($nombre_evenements);
|
||||
$stmt->fetch();
|
||||
$stmt->close();
|
||||
?>
|
Reference in New Issue
Block a user