projet_php/app/views/inscription.php
2026-01-19 15:54:03 +01:00

200 lines
7.7 KiB
PHP

<!-- Page : Inscription -->
<main class="container py-5">
<!-- Centrage du formulaire -->
<div class="row justify-content-center">
<div class="col-12 col-md-10 col-lg-6">
<!-- Carte Bootstrap contenant le formulaire -->
<div class="card shadow-sm border-0 rounded-4 p-4 p-lg-5">
<!-- Titre et description -->
<h1 class="h3 fw-bold mb-1">Inscription</h1>
<p class="text-secondary mb-4">
Créez votre compte utilisateur.
</p>
<?php
// Affichage des messages d'erreur du formulaire, l'affichage en Bootstrap (validation côté serveur)
if (!empty($arrError)) { ?>
<div class="alert alert-danger" role="alert">
<?php foreach ($arrError as $strError) { ?>
<p class="mb-0">
<?php echo htmlspecialchars($strError); ?>
</p>
<?php } ?>
</div>
<?php } ?>
<!-- Formulaire d'inscription -->
<!-- Les données sont envoyées en POST vers la méthode signin du user_controller.php -->
<form method="POST" action="index.php?ctrl=user&action=signin">
<div class="row g-3">
<!-- Champ : Nom -->
<div class="col-md-6">
<label class="form-label" for="user_name">
Nom *
</label>
<input
class="form-control <?php if (isset($arrError['user_name'])) echo 'is-invalid'; ?>"
type="text"
id="user_name"
name="user_name"
value="<?php echo htmlspecialchars($objUser->getName()); ?>"
required
>
</div>
<!-- Champ : Prénom -->
<div class="col-md-6">
<label class="form-label" for="user_firstname">
Prénom *
</label>
<input
class="form-control <?php if (isset($arrError['user_firstname'])) echo 'is-invalid'; ?>"
type="text"
id="user_firstname"
name="user_firstname"
value="<?php echo htmlspecialchars($objUser->getFirstname()); ?>"
required
>
</div>
<!-- Champ : Pseudo -->
<div class="col-12">
<label class="form-label" for="user_pseudo">
Pseudo *
</label>
<div class="input-group">
<span class="input-group-text">@</span>
<input
class="form-control <?php if (isset($arrError['user_pseudo'])) echo 'is-invalid'; ?>"
type="text"
id="user_pseudo"
name="user_pseudo"
value="<?php echo htmlspecialchars($objUser->getPseudo()); ?>"
required
>
</div>
</div>
<!-- Champ : Adresse e-mail -->
<div class="col-12">
<label class="form-label" for="user_mail">
Adresse e-mail *
</label>
<input
class="form-control <?php if (isset($arrError['user_mail'])) echo 'is-invalid'; ?>"
type="email"
id="user_mail"
name="user_mail"
value="<?php echo htmlspecialchars($objUser->getMail()); ?>"
required
>
</div>
<!-- Champ : Mot de passe -->
<div class="col-12">
<label class="form-label" for="user_password">
Mot de passe *
</label>
<input
class="form-control <?php if (isset($arrError['user_password'])) echo 'is-invalid'; ?>"
type="password"
id="user_password"
name="user_password"
required
>
</div>
<!-- Champ : Confirmation du mot de passe -->
<div class="col-12">
<label class="form-label" for="pwd_confirm">
Confirmation du mot de passe *
</label>
<input
class="form-control <?php if (isset($arrError['pwd_confirm'])) echo 'is-invalid'; ?>"
type="password"
id="pwd_confirm"
name="pwd_confirm"
required
>
</div>
<!-- Champ optionnel : numéro de téléphone -->
<div class="col-12">
<label class="form-label" for="user_phone">
Téléphone
</label>
<input
class="form-control"
type="text"
id="user_phone"
name="user_phone"
>
</div>
<!-- Champ optionnel : profession de l'utilisateur -->
<div class="col-12">
<label class="form-label" for="user_work">
Profession
</label>
<input
class="form-control"
type="text"
id="user_work"
name="user_work"
>
</div>
<!-- Champ optionnel : localisation de l'utilisateur -->
<div class="col-12">
<label class="form-label" for="user_location">
Localisation
</label>
<input
class="form-control"
type="text"
id="user_location"
name="user_location"
>
</div>
<!-- Champ optionnel : phrase d'accroche / description courte -->
<div class="col-12">
<label class="form-label" for="user_description">
Phrase d'accroche
</label>
<textarea
class="form-control"
id="user_description"
name="user_description"
rows="3"
></textarea>
</div>
<!-- Lien vers la page de connexion -->
<div class="col-12 text-center">
<small class="text-secondary">
Déjà un compte ?
<a href="index.php?ctrl=user&action=login">Se connecter</a>
</small>
</div>
<!-- Bouton de soumission -->
<div class="col-12 d-grid mt-2">
<button type="submit" class="btn btn-primary btn-lg rounded-3">
Créer mon compte
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</main>