Laurentvidal.fr vous aide à trouver des réponses fiables à toutes vos questions grâce à une communauté d'experts. Rejoignez notre plateforme de questions-réponses et connectez-vous avec des professionnels prêts à fournir des réponses précises à vos questions. Rejoignez notre plateforme pour obtenir des réponses fiables à vos interrogations grâce à une vaste communauté d'experts.

Exercice php / html sur les formulaires (niveau première)
Bonjour, j'ai un exercice sur les formulaires en php / html, voici le code en pièce jointe et les questions ci-dessous qui vont avec.
Merci beaucoup pour votre aide !

questions : (je précise que même si vous ne répondez qu'à une seule question ou me dîtes comment y répondre ça peut m'être utile tout de même :) )

1) A partir du fichier, quand est-ce que le formulaire HTML qui termine ce
fichier sera affiché sur le navigateur du client ?
2) Pour ce même formulaire, quelle est la méthode HTTP employée ? Quelle autre méthode aurait pu être employée ? Quels champs de formulaire sont-ils obligatoires ?
3) Quels sont les identifiants attendus ? Que se passe-t-il si on fournit le bon login mais pas le bon mot de passe attendu ? Est-ce une bonne pratique de sécurité ?
4) Que se passe-t-il si l’authentification réussit ? Consulter la documentation de la fonction header de PHP si besoin.
5) Quelle information est communiquée à la page suite.php, à quelle méthode HTTP fait-on ainsi appel ?

Merci beaucoup !


Exercice Php Html Sur Les Formulaires Niveau Première Bonjour Jai Un Exercice Sur Les Formulaires En Php Html Voici Le Code En Pièce Jointe Et Les Questions Cid class=

Sagot :

Réponse :

1) Ce formulaire sera affiché quand le client se rendra sur la page de connexion. (Je ne suis pas sûr d'avoir compris la question, j'espère que j'y répond correctement !)

2) La méthode utilisé est la méthode "POST".

La méthode GET aurait pu être utilisé, mais elle n'est pas sécurisé car elle passe le nom des champs et leurs valeurs dans l'url, n'importe qui qui passe pourrait donc voir le mot de passe entrée. La méthode PUT aurait pu être utilisé, elle est "similaire" à la méthode POST (Je dis similaire avec des pincettes, car elles ont 2 rôles différent).

3) Les identitifants attendu sont "root" en tant que login, et "42" en tant que mot de passe.

Si l'on fournit le bon login mais pas le bon mot de passe, alors un message nous disant "Mauvais mot de passe !" nous sera affiché.

Non, dans ce cas, c'est ne pas une bonne pratique de sécurité.

4) Si l'authentification réussi, alors l'utilisateur est redirigé vers la page suite.php.

5) Le login est communiqué à la page suite.php, par la méthode GET.

Explications :

1)

2) Comme on peut le voir dans la balise "form", elle a un attribut du nom de method, qui a pour valeur "POST". On en déduit donc que ce formulaire utilise la méthode POST. Dans le code PHP au dessus du formulaire, on peut aussi voir que le code attend de recevoir des paramètres de type POST, car il fait appel à la variable super global $_POST. Voir plus: https://www.php.net/manual/fr/reserved.variables.post.php

Pour ce qui est des méthodes, si tu veux plus d'info:

https://developer.mozilla.org/fr/docs/Web/HTTP/Methods/PUT

https://developer.mozilla.org/fr/docs/Web/HTTP/Methods/GET

3) /!\ À savoir, ça dépend déjà de si l'inscription est ouverte à tous et à toutes et/ou si les utilisateurs peuvent choisir leur login. Car si l'on autorise le choix du login à l'inscription, même si nous affichons un message "Mauvais login ou mot de passe", un pirate n'aura aucun mal à vérifier si le login existe en tentant une inscription avec ce dernier (Sachant que le login devrait-être unique par utilisateur). Puis, sera libre à lui d'exercer une attaque Bruteforce (par exemple) pour essayer d'avoir le mot de passe. Dans un cas ou l'inscription est fermé, alors c'est une mauvaise pratique de sécurité, car le pirate ne connait pas forcément le login, et ne peut pas le deviner. /!\

4) Pour ce qui est de la documentation pour mieux comprendre: https://www.php.net/manual/fr/function.header

5) Après avoir lu la documentation, tu as sans doute remarqué qu'écrire Location dans la fonction qui écrit l'en-tête servait à redirigé vers une autre page. Maintenant donc, il suffit de regarder la page sur laquelle on est redirigé, et les champs qui sont passé dans l'URL.