Jan BELLON fe47cb9f3b Update 72 files
- /html/about.php
- /html/admin.php
- /html/compte.php
- /html/editpage.php
- /html/login.php
- /html/logout.php
- /html/news.php
- /html/register.php
- /html/src/banner/index.php
- /html/src/img/empty.jpg
- /html/src/img/favicon.ico
- /html/src/miniature/index.php
- /html/src/pp/index.php
- /html/upload.php
- /html/user.php
- /html/users.php
- /content/journal/0.md
- /content/journal/198183.md
- /content/about.md
- /content/admin.md
- /content/index.md
- /html-old/editpage.php
- /html-old/src/banner/index.php
- /html-old/src/css/index.php
- /html-old/src/css/style.css
- /html-old/src/fonts/index.php
- /html-old/src/fonts/bahnschrift.ttf
- /html-old/src/img/empty.jpg
- /html-old/src/img/favicon.ico
- /html-old/src/img/index.php
- /html-old/src/img/athena-mono.png
- /html-old/src/miniature/index.php
- /html-old/src/pp/index.php
- /html-old/src/index.php
- /html-old/about.php
- /html-old/robots.txt
- /html-old/admin.php
- /html-old/compte.php
- /html-old/login.php
- /html-old/logout.php
- /html-old/index.php
- /html-old/news.php
- /html-old/register.php
- /html-old/upload.php
- /html-old/users.php
- /html-old/user.php
- /html/about/index.php
- /html/account/index.php
- /html/admin/index.php
- /html/assets/banners/index.php
- /html/assets/miniatures/index.php
- /html/assets/pp/index.php
- /html/assets/index.php
- /html/editor/index.php
- /html/login/index.php
- /html/login/logout.php
- /html/login/register.php
- /html/news/index.php
- /html/settings/index.php
- /html/settings/deleteaccount.php
- /html/src/css/style.css
- /html/src/img/athena-mono.png
- /html/index.php
- /html/robots.txt
- /content/articles/0.md
- /content/articles/198183.md
- /content/pages/about.md
- /content/pages/admin.md
- /content/pages/index.md
- /include/variables.php
- /include/functions.php
- /config/global.ini
2024-03-14 19:55:10 +00:00

99 lines
3.5 KiB
PHP

<?php
require("../../include/variables.php");
require("../../include/functions.php");
$pdo = sqlConnect($sqlDatabaseHost, $sqlDatabaseName, $sqlDatabaseUser, $sqlDatabasePass);
if (!isset($_SESSION['userID'])) {
header("Location: /login");
http_response_code(403);
}
if (isset($_POST['username']) && isset($_POST['email'])) {
if(empty($_POST['username']) == false) {
if(preg_match('!\S!u', $_POST['username']) && preg_match('!\S!u', $_POST['email'])) {
$sqlRequest = "SELECT ID FROM users WHERE username = :username";
$request = $pdo->prepare($sqlRequest);
$request->bindParam(":username", htmlspecialchars($_POST['username']));
$request->execute();
$result = $request->fetchAll(PDO::FETCH_ASSOC);
if($result && $result[0]['ID'] != $_SESSION['userID']) {
$status = "Le nom d'utilisateur n'est pas disponible";
} else {
$sqlRequest = "UPDATE users SET username = :username, email = :email WHERE ID = :userID";
$request = $pdo->prepare($sqlRequest);
$request->bindParam(":username", htmlspecialchars($_POST['username']));
$request->bindParam(":email", htmlspecialchars($_POST['email']));
$request->bindParam(":userID", $_SESSION['userID']);
if($request->execute()) {
$status = "Informations mises à jour";
}
}
}
} else {
$status = "Le nom d'utilisateur ne peut pas être vide";
}
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<?php fillHead($rootPageURL, $pageTitle, $darkTheme, $lightTheme);?>
<style>
.choice {
display: block;
}
.choice a {
margin: 2em 0;
display: block;
}
</style>
</head>
<body class="body">
<header>
<div class="panel-content">
<?php fillHeader($rootPageURL, $headerTitle, $headerSubtitle);?>
</div>
</header>
<nav>
<div class="panel-content">
<?php fillNav($rootPageURL);?>
</div>
</nav>
<main>
<div class="content">
<form action="#" method="post">
<div class="form">
<div class="form-title">Options</div>
<div class="status"><?=$status?></div>
<?php
$sqlRequest = "SELECT username, email FROM users WHERE ID = :userID";
$request = $pdo->prepare($sqlRequest);
$request->bindParam(":userID", $_SESSION['userID']);
$request->execute();
$result = $request->fetchAll(PDO::FETCH_ASSOC);
textInput("text", "", "username", "username", $result[0]['username']);
textInput("email", "", "email", "user@e59.fr", $result[0]['email']);
?>
<div class="choice">
<button type="submit">Mettre à jour</button>
<a href="deleteaccount.php">Supprimer le compte</a>
</div>
</div>
</form>
</div>
</main>
<footer>
<div class="panel-content">
<?php fillFooter($footerText);?>
</div>
</footer>
</body>
</html>