55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
![]() |
<?php
|
||
|
// Terminaisons par temps
|
||
|
$terminaisons = array(
|
||
|
"present" => array("e", "es", "e", "ons", "ez", "ent"),
|
||
|
"futur" => array("erai", "eras", "era", "erons", "erez", "eront"),
|
||
|
"imparfait" => array("ais", "ais", "ait", "ions", "iez", "aient")
|
||
|
);
|
||
|
|
||
|
// Pronoms personnels
|
||
|
$pronoms = array("je", "tu", "il", "nous", "vous", "ils");
|
||
|
|
||
|
// Récupération des données POST
|
||
|
$verbe = filter_input(INPUT_POST, "verbe", FILTER_SANITIZE_STRING);
|
||
|
$tempsChoisis = $_POST['temps'] ?? [];
|
||
|
|
||
|
// Vérification que le verbe se termine par "er"
|
||
|
if (!$verbe || substr($verbe, -2) !== 'er') {
|
||
|
die("Le verbe doit être du premier groupe (terminé par -er).");
|
||
|
}
|
||
|
|
||
|
$radical = substr($verbe, 0, -2); // Enlève "er"
|
||
|
|
||
|
?>
|
||
|
|
||
|
<!DOCTYPE html>
|
||
|
<html lang="fr">
|
||
|
<head>
|
||
|
<meta charset="UTF-8">
|
||
|
<title>Conjugaison</title>
|
||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.classless.min.css">
|
||
|
</head>
|
||
|
<body>
|
||
|
<main>
|
||
|
<h3>Conjugaison du verbe « <?= htmlspecialchars($verbe) ?> »</h3>
|
||
|
|
||
|
<?php foreach ($tempsChoisis as $temps): ?>
|
||
|
<?php if (isset($terminaisons[$temps])): ?>
|
||
|
<section>
|
||
|
<h4><?= ucfirst($temps) ?></h4>
|
||
|
<ul>
|
||
|
<?php foreach ($terminaisons[$temps] as $i => $terminaison): ?>
|
||
|
<li><?= $pronoms[$i] . ' ' . $radical . $terminaison ?></li>
|
||
|
<?php endforeach; ?>
|
||
|
</ul>
|
||
|
</section>
|
||
|
<?php endif; ?>
|
||
|
<?php endforeach; ?>
|
||
|
|
||
|
<?php if (empty($tempsChoisis)): ?>
|
||
|
<p>Aucun temps sélectionné.</p>
|
||
|
<?php endif; ?>
|
||
|
</main>
|
||
|
</body>
|
||
|
</html>
|