Skip to content
Snippets Groups Projects
Commit 70db60c7 authored by aldo.gonzalez-lorenzo's avatar aldo.gonzalez-lorenzo
Browse files

Ajouter un exemple avec une barre de recherche

parent 6efe61ed
Branches
No related tags found
No related merge requests found
......@@ -16,16 +16,20 @@ include 'include/php/functions.php';
Concevoir des visualisations de données pour le web et un support animé.
</p>
<p>
Voici quelques exemples d'utilisation de la base de données, dont un avec une graphique avec Google Charts <a href="test-charts.html">ici</a>.
Voici quelques exemples d'utilisation de la base de données.
</p>
<p>
Aussi, vous trouverez <a href="test-charts.html">un exemple</a> qui utilise Google Charts, et <a href="search.php">un autre exemple</a> avec une barre de recherche.
</p>
<section>
<h2>Les BUT avec le plus grand nombre de candidats</h2>
<ol>
<?php
$dbh = db_connection();
$sth = $dbh->prepare('SELECT lib_comp_voe_ins, voe_tot FROM parcoursup
WHERE fili = "BUT"
ORDER BY voe_tot DESC LIMIT 5');
WHERE fili = "BUT"
ORDER BY voe_tot DESC LIMIT 5');
$sth->execute();
$result = $sth->fetchAll();
foreach ($result as $row) {
......@@ -35,9 +39,9 @@ foreach ($result as $row) {
</ol>
</section>
<section>
<h2>Les villes avec le plus de BTS</h2>
<ol>
<section>
<h2>Les villes avec le plus de BTS</h2>
<ol>
<?php
$sth = $dbh->prepare('SELECT ville_etab, count(*) AS count FROM parcoursup
WHERE fili = "BTS"
......@@ -49,16 +53,16 @@ foreach ($result as $row) {
echo '<li>' . $row['ville_etab'] . ' (<em>' . $row['count'] . ' BTS</em>)</li>';
}
?>
</ol>
</section>
</ol>
</section>
<section>
<h2>Les BUT Informatique avec le plus grand nombre de candidates admises</h2>
<ol>
<?php
$sth = $dbh->prepare('SELECT lib_comp_voe_ins, acc_tot_f FROM parcoursup
WHERE lib_for_voe_ins LIKE "BUT - Informatique%"
ORDER BY acc_tot_f DESC LIMIT 5');
WHERE lib_for_voe_ins LIKE "BUT - Informatique%"
ORDER BY acc_tot_f DESC LIMIT 5');
$sth->execute();
$result = $sth->fetchAll();
foreach ($result as $row) {
......
<?php
/**
* Barre de recherche de formations avec affichage d'informations
*
* L'utilisateur choisir dans le formulaire une formation.
* Le formulaire envoie cette information vers la même page, et on
* affiche le nombre de places et le nombre de candidats.
*/
include 'include/php/functions.php';
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>SAÉ 303</title>
</head>
<body>
<h1>SAÉ 303</h1>
<form method="get" action="search.php">
<label>
Choisis une formation&nbsp;:
<input list="formations" name="formation" style="width: 400px">
</label>
<datalist id="formations">
<?php
/* On remplit l'élément datalist (les suggestions pour le formulaire)
* avec les noms des formations
*/
$dbh = db_connection();
$sth = $dbh->prepare('SELECT lib_comp_voe_ins FROM parcoursup
ORDER BY lib_comp_voe_ins ASC');
$sth->execute();
$result = $sth->fetchAll();
foreach ($result as $row) {
echo '<option value="' . $row['lib_comp_voe_ins'] . '">';
}
?>
</datalist>
<input type="submit" value="Confirmer">
</form>
<?php
/* Si $_GET['formation'] est défini, ça veut dire qu'on est arrivé dans cette page
* après avoir sélectionné une formation. Dans ce cas, on affiches les information
* de cette formation
*/
if (isset($_GET['formation'])) {
$sth = $dbh->prepare('SELECT capa_fin, voe_tot FROM parcoursup
WHERE lib_comp_voe_ins = :formation');
$donnees = [
"formation" => $_GET['formation']
];
$sth->execute($donnees);
$result = $sth->fetchAll();
if (count($result) == 1) {
// Si on obtient un résultat, afficher les informations
echo "<h2>" . $_GET['formation'] . "</h2>";
echo "<p>" . $result[0]['voe_tot'] . " candidats pour " . $result[0]['capa_fin'] . " places</p>";
}
} else {
echo "<p>Veuillez choisir une formation</p>";
}
?>
</body>
</html>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment