Conseils affichage contenu autre page avec Formulaire POST

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Conseils affichage contenu autre page avec Formulaire POST

Re: Conseils affichage contenu autre page avec Formulaire POST

par Ma8__ » 30 janv. 2021, 12:07

Bonjour,
J'ai effectue la modification, en mettant les verifications POST sur la même page(avec le HTML) mais quand je soumet un formulaire, les erreurs des autre formulaires se déclenchent car il ont de valeur adéquat...

Comment procéder dans ce cas.
Ex. quand je soumet le formulaire 'a', les erreurs de 'b' s’affiche car il est vide.
if ($_SERVER['REQUEST_METHOD'] === 'POST'):
if (isset($_POST['a']) && !empty($_POST['a'])) {
// ...
} else {$errors = '...';}


if (isset($_POST['b']) && !empty($_POST['b'])) {
// ...
} else {$errors = '...';}

endif;
Merci bien

Re: Conseils affichage contenu autre page avec Formulaire POST

par @rthur » 29 janv. 2021, 19:40

La solution propre est de reproduire ces formulaires et de les envoyer côté serveur avec CURL ou Guzzle en POST, récupérer le retour et l'afficher comme tu le souhaites.
https://github.com/guzzle/guzzle

Si tu veux vraiment faire juste un require du formulaire, tu peux remplacer ton require par un file_get_contents(), et modifier à la volée le code HTML du formulaire récupéré par exemple en injectant un attribut action pour remettre l'url de la page distante b.php.
<form action="http://domaine.com/b.php" method="post">

Conseils affichage contenu autre page avec Formulaire POST

par Ma8__ » 29 janv. 2021, 19:12

Bonjour tout le monde,

Que Me Conseillez Vous pour afficher du contenu distant Avec Formulaire POST :o ?

J'ai une page principale a.php, sur celle-ci, je souhaite afficher les pages b.php et c.php qui contiennent des formulaires POST,
Actuellement, j'utilise un require(); mais le traitement des données POST se font sur a.php et non sur leur pages respectives.

Ce qui cause des problèmes,
:arrow: Affichage des erreurs alors que le formulaire n'est pas soumis
:arrow: Re soumission quand on fait f5 même si le formulaire est déjà soumis.

J'utilise cette solution car au niveau de mon code, cela me permet d'avoir un code plus lisible.
Et puis, je souhaite une solution plus propre car c'est un projet sérieux.

Je pensai a ob_start() et ob_get_flush() mais je ne vous pas trop comment l’utiliser.
L'autre solution, c'est d’afficher sur la page a.php, que le html, et quand il y a soumission, sur a.php je génère une requête sur sur un fichier distant qui comprendra les requêtes.


Merci bien,
Cordialement :D