salut,
@reg35
empty n’émet pas d'erreur et retour true si la variable n'existe pas
Détermine si une variable est considérée comme vide. Une variable est considérée comme vide si elle n'existe pas, ou si sa valeur équivaut à FALSE. La fonction empty() ne génère pas d'alerte si la variable n'existe pas.
Retourne FALSE si var existe et est non-vide, et dont la valeur n'est pas zéro.
Ce qui suit est considéré comme étant vide :
"" (une chaîne vide)
0 (0 en tant qu'entier)
0.0 (0 en tant que nombre à virgule flottante)
"0" (0 en tant que chaîne de caractères)
NULL
FALSE
array() (un tableau vide)
$var; (une variable déclarée, mais sans valeur)
une variable ou index qui n'existe sont considéré comme étant null et donc vide. empty retourne donc true lorsque l'on test un truc qui n'existe pas
donc dans if (isset($_POST['ville_nom']) AND empty($_POST['ville_nom'])) le isset et redondant est redondant
if (empty($_POST['ville_nom']))
{echo 'le champ est vide';}
suffit
@quattro : il faut utiliser l'alternative
else
si le champs est vide tu fais rien mais s'il n'est pas vide tu bosses.
d'ailleurs tu le fais déjà mais juste pour la requête SQL
il faut que tout le reste soit dans ton else, l'accolade fermante doit être à la dernière ligne du script que tu indiques (dans un passage php

).
le plus simple c'est de faire l'affichage dans la boucle while pas besoin du tableau intermédiare.
pense aussi à utiliser
mysqli_free_result ou dans ton cas la version poo $result ->free().
@+