Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
S
SAE4
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Admin message
Arrêt du service - 11/07 de 07h30 à 07h45 - Mise à jour de sécurité
Show more breadcrumbs
MATEJKA Milan
SAE4
Commits
cdebf948
Commit
cdebf948
authored
1 month ago
by
VoidOma
Browse files
Options
Downloads
Patches
Plain Diff
commit Navbar,espace_membre sécurisation
parent
bc35c0a0
No related branches found
No related tags found
1 merge request
!1
MergeRequest_1
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
code_source/web_app/includes/navbar.php
+17
-19
17 additions, 19 deletions
code_source/web_app/includes/navbar.php
code_source/web_app/public/espace_membre.php
+44
-15
44 additions, 15 deletions
code_source/web_app/public/espace_membre.php
with
61 additions
and
34 deletions
code_source/web_app/includes/navbar.php
+
17
−
19
View file @
cdebf948
<?php
<?php
require_once
'../includes/init.php'
;
require_once
'../includes/init.php'
;
// Définit la variable $user_name si elle existe dans la session
// Vérifie que la session est bien démarrée
$user_name
=
$_SESSION
[
'user_name'
]
??
null
;
if
(
session_status
()
===
PHP_SESSION_NONE
)
{
session_start
();
}
// Sécurise les données extraites de la session
$user_name
=
$_SESSION
[
'user_name'
]
??
null
;
$user_statut
=
$_SESSION
[
'user'
][
'statut'
]
??
null
;
$user_id
=
$_SESSION
[
'user_id'
]
??
null
;
?>
?>
<nav
class=
"navbar"
>
<nav
class=
"navbar"
>
...
@@ -18,15 +24,10 @@ $user_name = $_SESSION['user_name'] ?? null;
...
@@ -18,15 +24,10 @@ $user_name = $_SESSION['user_name'] ?? null;
<!-- Liens de navigation principaux -->
<!-- Liens de navigation principaux -->
<ul
class=
"nav-links"
>
<ul
class=
"nav-links"
>
<li><a
href=
"index.php"
>
Accueil
</a></li>
<li><a
href=
"index.php"
>
Accueil
</a></li>
<!-- Lien dynamique pour les tournois (page commune dans les deux cas ici) -->
<!-- Lien dynamique pour les tournois -->
<li><a
href=
"admin_tournois.php"
>
Tournois
</a></li>
<?php
if
(
isset
(
$_SESSION
[
'user'
][
'statut'
])
&&
$_SESSION
[
'user'
][
'statut'
]
===
'ADMINISTRATEUR'
)
:
?>
<li><a
href=
"admin_tournois.php"
>
Tournois
</a></li>
<?php
else
:
?>
<li><a
href=
"admin_tournois.php"
>
Tournois
</a></li>
<?php
endif
;
?>
<li
class=
"dropdown"
>
<li
class=
"dropdown"
>
<a
href=
"#"
class=
"dropdown-toggle"
>
Club
</a>
<a
href=
"#"
class=
"dropdown-toggle"
>
Club
</a>
<ul
class=
"dropdown-menu"
>
<ul
class=
"dropdown-menu"
>
...
@@ -35,22 +36,19 @@ $user_name = $_SESSION['user_name'] ?? null;
...
@@ -35,22 +36,19 @@ $user_name = $_SESSION['user_name'] ?? null;
<li><a
href=
"infrastructures.php"
>
Nos Installations
</a></li>
<li><a
href=
"infrastructures.php"
>
Nos Installations
</a></li>
</ul>
</ul>
</li>
</li>
<!-- Ajouter le bouton "Membres" pour les administrateurs -->
<!-- Ajouter le bouton "Membres"
uniquement
pour les administrateurs -->
<?php
if
(
isset
(
$_SESSION
[
'user'
][
'statut'
])
&&
$_SESSION
[
'user'
][
'
statut
'
]
===
'ADMINISTRATEUR'
)
:
?>
<?php
if
(
$user_
statut
===
'ADMINISTRATEUR'
)
:
?>
<li><a
href=
"admin_membres.php"
>
Membres
</a></li>
<li><a
href=
"admin_membres.php"
>
Membres
</a></li>
<?php
endif
;
?>
<?php
endif
;
?>
</ul>
</ul>
<!-- Boutons Connexion /
S'inscrire dans le coin supérieur droit
-->
<!-- Boutons Connexion /
Mon compte / Déconnexion
-->
<div
class=
"auth-buttons"
>
<div
class=
"auth-buttons"
>
<?php
if
(
isset
(
$_SESSION
[
'user_id'
])
&&
!
empty
(
$_SESSION
[
'user_id'
]))
:
?>
<?php
if
(
!
empty
(
$user_id
))
:
?>
<!-- Utilisateur connecté -->
<a
href=
"espace_membre.php"
class=
"btn"
>
Mon Compte
</a>
<a
href=
"espace_membre.php"
class=
"btn"
>
Mon Compte
</a>
<a
href=
"logout.php"
class=
"btn"
>
Déconnexion
</a>
<a
href=
"logout.php"
class=
"btn"
>
Déconnexion
</a>
<?php
else
:
?>
<?php
else
:
?>
<!-- Utilisateur non connecté -->
<a
href=
"login.php"
class=
"btn auth-btn"
>
Connexion
</a>
<a
href=
"login.php"
class=
"btn auth-btn"
>
Connexion
</a>
<a
href=
"register.php"
class=
"btn auth-btn"
>
S'inscrire
</a>
<a
href=
"register.php"
class=
"btn auth-btn"
>
S'inscrire
</a>
<?php
endif
;
?>
<?php
endif
;
?>
...
...
This diff is collapsed.
Click to expand it.
code_source/web_app/public/espace_membre.php
+
44
−
15
View file @
cdebf948
<?php
<?php
require_once
'../includes/init.php'
;
require_once
'../includes/init.php'
;
$pageTitle
=
"Espace Membre - Tennis Club Saint-Dié"
;
// Titre de la page
$pageTitle
=
"Espace Membre - Tennis Club Saint-Dié"
;
include
'../includes/header.php'
;
include
'../includes/header.php'
;
// Simulation d'une session utilisateur (à remplacer par des données réelles)
// Assure que la session est démarrée
if
(
session_status
()
===
PHP_SESSION_NONE
)
{
session_start
();
}
$userId
=
$_SESSION
[
'user_id'
]
??
1
;
// Remplacez par votre gestion réelle de session
// Vérifie si l'utilisateur est connecté
$pdo
=
new
PDO
(
"mysql:host=localhost;dbname=tennisclub"
,
"root"
,
""
);
// Adapter avec vos paramètres
if
(
!
isset
(
$_SESSION
[
'user_id'
]))
{
header
(
'Location: login.php'
);
exit
;
}
// Récupérer les informations principales du membre
$userId
=
$_SESSION
[
'user_id'
];
// Connexion à la base de données sécurisée
try
{
$pdo
=
new
PDO
(
"mysql:host=localhost;dbname=tennis;charset=utf8mb4"
,
"root"
,
""
,
[
PDO
::
ATTR_ERRMODE
=>
PDO
::
ERRMODE_EXCEPTION
,
PDO
::
ATTR_DEFAULT_FETCH_MODE
=>
PDO
::
FETCH_ASSOC
,
PDO
::
ATTR_EMULATE_PREPARES
=>
false
]);
}
catch
(
PDOException
$e
)
{
die
(
"Erreur de connexion à la base de données."
);
}
// Récupération des informations principales du membre
$stmt
=
$pdo
->
prepare
(
"SELECT nom, prenom, email, date_inscription, mot_de_passe, statut FROM membre WHERE idMembre = ?"
);
$stmt
=
$pdo
->
prepare
(
"SELECT nom, prenom, email, date_inscription, mot_de_passe, statut FROM membre WHERE idMembre = ?"
);
$stmt
->
execute
([
$userId
]);
$stmt
->
execute
([
$userId
]);
$membre
=
$stmt
->
fetch
(
PDO
::
FETCH_ASSOC
);
$membre
=
$stmt
->
fetch
();
if
(
!
$membre
)
{
echo
"<p>Utilisateur non trouvé.</p>"
;
include
'../includes/footer.php'
;
exit
;
}
// Récupération des informations supplémentaires si adhérent
$infosSupp
=
null
;
if
(
$membre
[
'statut'
]
===
'ADHERENT'
)
{
$stmtSupp
=
$pdo
->
prepare
(
"SELECT adresse, date_naissance, telephone FROM informations_membre WHERE idMembre = ?"
);
$stmtSupp
->
execute
([
$userId
]);
$infosSupp
=
$stmtSupp
->
fetch
();
}
?>
?>
<body
class=
"page-container"
>
<body
class=
"page-container"
>
<!-- Inclure la barre de navigation -->
<?php
include
'../includes/navbar.php'
;
?>
<?php
include
'../includes/navbar.php'
;
?>
<main
class=
"content-wrapper"
>
<main
class=
"content-wrapper"
>
<div
class=
"container"
>
<div
class=
"container"
>
<!--
Première s
ection
: I
nformations principales -->
<!--
S
ection
des i
nformations principales -->
<div
class=
"section"
>
<div
class=
"section"
>
<img
src=
"/images/membre-default.jpg"
alt=
"Photo de profil"
style=
"width: 100%; max-height: 300px; object-fit: cover;"
>
<img
src=
"/images/membre-default.jpg"
alt=
"Photo de profil"
style=
"width: 100%; max-height: 300px; object-fit: cover;"
>
<h1>
Bienvenue,
<?=
htmlspecialchars
(
$membre
[
'prenom'
]
.
' '
.
$membre
[
'nom'
])
?>
</h1>
<h1>
Bienvenue,
<?=
htmlspecialchars
(
$membre
[
'prenom'
]
.
' '
.
$membre
[
'nom'
])
?>
</h1>
...
@@ -31,10 +61,9 @@ $membre = $stmt->fetch(PDO::FETCH_ASSOC);
...
@@ -31,10 +61,9 @@ $membre = $stmt->fetch(PDO::FETCH_ASSOC);
<p><strong>
Mot de passe (haché) :
</strong>
<?=
htmlspecialchars
(
$membre
[
'mot_de_passe'
])
?>
</p>
<p><strong>
Mot de passe (haché) :
</strong>
<?=
htmlspecialchars
(
$membre
[
'mot_de_passe'
])
?>
</p>
</div>
</div>
<!-- Séparation par une ligne droite -->
<hr
style=
"border: 0; border-top: 1px solid #ddd; margin: 20px 0;"
>
<hr
style=
"border: 0; border-top: 1px solid #ddd; margin: 20px 0;"
>
<!--
Zone des
informations supplémentaires
pour les adhérents uniquement
-->
<!--
Section
informations supplémentaires -->
<?php
if
(
$membre
[
'statut'
]
===
'ADHERENT'
)
:
?>
<?php
if
(
$membre
[
'statut'
]
===
'ADHERENT'
)
:
?>
<div
class=
"section"
>
<div
class=
"section"
>
<h2>
Informations supplémentaires
</h2>
<h2>
Informations supplémentaires
</h2>
...
@@ -48,8 +77,8 @@ $membre = $stmt->fetch(PDO::FETCH_ASSOC);
...
@@ -48,8 +77,8 @@ $membre = $stmt->fetch(PDO::FETCH_ASSOC);
</div>
</div>
<?php
endif
;
?>
<?php
endif
;
?>
</div>
</div>
</main>
</main>
<?php
include
'../includes/footer.php'
;
?>
</body>
<?php
include
'../includes/footer.php'
;
?>
</body>
</html>
</html>
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment