Récupérer les chps "name" d'un formulaire, même si l'utilisateur n'a pas répondu

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 : Récupérer les chps "name" d'un formulaire, même si l'utilisateur n'a pas répondu

par Ryle » 14 nov. 2008, 19:02

Y a pas vraiment de solution à ton problème, c'est le comportement normal du navigateur : il n'envoi au serveur que les valeurs des cases à cocher / boutons radios / liste déroulantes qui sont sélectionnés.

Donc si une case n'est pas cochée, elle n'est pas envoyée. Seule solution pour toi pour qu'une case n'a pas été cochée, c'est de les gérer une par une et de vérifier pour chaque si celle-ci a été cochée ou pas. Pour cela, il suffit de tester leur présence dans les données envoyées :
if (isSet($_POST['case_1'])) // si l'attribut name de ta case est "case_1"
  $message .= "Case n°1 : cochée";
else
  $message .= "Case n°1 : pas cochée";
...

Je ne connais pas PHP

par zephir11060 » 14 nov. 2008, 18:04

Personne ne connait la solution? Je ne comprend pas j'ai testé plein de solution depuis mon post et ça ne marche pas, j'ai enlevé la boucle et ajouté "$formExtGar = $_post['ExtGar'];" ou "$_post['ExtGar'];" et rien ne marche
Quelqu'un peut m'aider SVP...

par Invité » 10 nov. 2008, 23:56

Si je dois comprendre quelque chose, désolé, je ne vois pas. :?:

par ouckileou » 10 nov. 2008, 15:24

Une valeur par défaut ?

Récupérer les chps "name" d'un formulaire, même si

par zephir1106 » 10 nov. 2008, 15:16

Bonjour à tous,

Débutant en PHP, je souhaiterais savoir ce qu'il faut rajouter à mon code pour recevoir dans le mail le champs "name", même si l'utilisateur n'a pas répondu à une question.
Pour un formulaire vide, je ne reçois actuellement que les valeurs "name" des champs "<input name="name" type="text">"
et rien pour les champs "type="checkbox"" ou "type="radio"".
Voici mon fichier PHP
$TO = 'adresse mail';
$h  = 'From: ' . $TO;
$subject = 'questionnaire';
$message = '';

while (list($key, $val) = each($HTTP_POST_VARS)) {
  $message .= $key.' : '.$val.'\n<br>';
}

//echo $message;
mail($TO, $subject, $message, $h);
Header('Location: http://siteinternet.fr');[php]

Merci pour votre aide     8-)