Je vais faire un résumé, ça devrait au moins te débloquer pour ce coup ci.
PHP supporte nativement deux méthodes HTTP : GET et POST. Les autres, c'est un peu plus velu et mal supporté, mais ce n'est pas très utile pour toi pour l'instant.
HTTP GET signifie que tu veux accéder une ressource.
HTTP POST signifie que tu soumets une ressource.
Une ressource est désignée par une URL. Il y a plusieurs compréhension de ce qu'est une ressource, et de nombreuses chapelles de ce que doit, est ou devrait être une ressource.
Dans ton cas, tu nous montre que ton formulaire est destiné à modifier la ressource updateClient.php
Par contre, je ne sais pas comment s'appelle le fichier qui contient le formulaire : est-ce le même nom de fichier ?
Dans tous les cas, la consultation de ton formulaire est une HTTP GET. Parce que tu demande à consulter la ressource en l'affichant de manière à pouvoir proposer une modification. Il faut donc bien comprendre que, au moment où tu affiche (au moins la première fois) ton formulaire, tu es en HTTP GET.
Les tableaux $_POST et $_GET sont des tableaux fournissant un accès simple à la plupart des paramètres HTTP fournits par le client (ton navigateur web, typiquement).
Dans le cas d'une HTTP GET, $_POST est toujours vide. $_GET contient les paramètres passés dans la search part de ton URI. C'est ce qui se situe après le point d'intérrogation dans ton URL.
Typiquement : updateClient.php?IdClient=1234
Dans le cas qui nous concerne, la requête SQL ne retournera rien, plusque la requête SQL créée sera
SELECT * FROM client WHERE IdClient=''
En général, pour comprendre pourquoi une requête ne retourne rien, tu l'affiche (avec var_dump par exemple), tu vérifie auprès de ton serveur que la requête à bien été exécutée (il faut activer le service de log de MySQL pour celà), et tu essaye la requête dans MySQL si jamais tu ne comprends pas pourquoi elle ne marche pas.
Bref, ça devrait déjà te débloquer un peu.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.