Je voudrais que lorsque l'utilisateur laisse les champs vides, la requête ne s'exécute pas.
J'ai essayé par divers moyens mais le résultat n'a pas au rendez vous.
Je vous remercie d'avance pour votre aide.
<?php
$servername = 'localhost';
$username = 'root';
$password = '';
$anneedefault = 2022;
// connexion à la base de données
$conn = mysqli_connect($servername, $username, $password,"remplacement");
// vérification de la connexion
if($conn->connect_error){
die('Erreur :' .$conn->connect_error);
}
// echo "Connexion réussie";
// afficher toutes les données de la table ville
// Trier par année décroissante & nomville croissante
$requete = "SELECT * FROM ville ORDER BY anneeDebutAS DESC, nomVille ASC";
$resultat = mysqli_query($conn, $requete);
?>
[html]
<!-- création du tableau / formulaire -->
<form action='' method='post'>
<div>
<p>Année de début de l'année scolaire<br/>
(ex : "2022" pour l'année scolaire "2022-2023") * : </p>
<input type="number" min="2021" max="2100" step="1" name="anneeDefault" value="<?php echo ANNEE_SCOLAIRE +1; ?>">
</div>
<table border="1" cellpadding="5" cellspacing="10" width="40%">
<!-- Haut du tableau -->
<thead>
<tr>
<th>Code Postal</th>
<th>Nom</th>
<th>Année Scolaire</th>
<th>Sélectionner</th>
</tr>
</thead>
<!-- Le bas du tableau -->
<tfoot>
<tr>
<td colspan="4"><input type="submit" name="submit" value="Reconduire les villes selectionnées"></td>
</tr>
</tfoot>
[/html]
<?php
// récupère les lignes du résultat dans un tableau associatif
while ($enreg=mysqli_fetch_array($resultat))
{
?>
[html]
<!-- Le milieu du tableau -->
<tbody>
<tr>
<!-- affichage des données de la BDD dans les colonnes du tableau -->
<td><?php echo $enreg["cpVille"];?></td>
<td><?php echo $enreg["nomVille"];?></td>
<td><?php echo $enreg["anneeDebutAS"];?></td>
<td><input type="checkbox" name="idVilles[]" value=<?php echo $enreg['idVille'];?>></td>
</tr>
</tbody>
[/html]
<?php } ?>
<!-- Fermeture de la condition "while" -->
</table>
<?php
var_dump($_POST);
echo "<br>";
// Mise à jour de la date du début de l'année en fonction de la date choisie
$req_basic = "UPDATE ville SET anneeDebutAS = '".$_POST['anneeDefault']."' WHERE idVille IN ".arrayToSqlList($_POST['idVilles']);
echo "<br>".$req_basic;
$resultat1 = mysqli_query($conn, $req_basic);
// display_var_dump($erreurs);
?>
</form>