comment savoir connaitre les valeurs 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 : comment savoir connaitre les valeurs posté

Re: comment savoir connaitre les valeurs posté

par AB » 19 août 2010, 19:45

Pour récupérer dans une chaine les éléments d'un tableau tu peux faire par exemple
$choix_pays = implode(',',$tab_pays);
echo $choix_pays;
Voir le fonctionnement de la fonction implode

Sinon t'a essayé ma méthode ? Elle permet d'avoir directement le nom du pays pour l'enregistrer en bdd, ce qui t'évite de faire la correspondance par la suite...

Re: comment savoir connaitre les valeurs posté

par henri IV » 19 août 2010, 16:57

Merci beaucoup
et pour récupérer le nombre dans une chaine $pays=pays18 j'ai pensé faire une conversion vers un entier int()$pays mais cela ne marche pas ! je ne trouve pas la syntaxe ?

Re: comment savoir connaitre les valeurs posté

par AB » 19 août 2010, 16:32

T'as essayer ? Si cela t'affiche bien les bonnes valeurs, j'enregistrerais le résultat dans un tableau ainsi tes éléments seront plus facilement manipulables.

Une variante avec foreach
$tab_pays = array();
foreach ($_POST as $key => $value)
{
  if (strpos($key, 'pays') === 0) $tab_pays[] = $value;
}
Et tu as directement le nom des pays cochés dans $tab_pays pour peu que tu aies à l'origine un tableau de correspondance que tu peux utiliser pour lister les checkbox ex:
<?php 
$pays['pays1'] = 'france';
$pays['pays2'] = 'angleterre';
$pays['pays3'] = 'allemagne';
//...
?>
<form action = "#" method = "post">
<p>
<?php foreach($pays as $key => $value)
{?>
<input name="<?php echo $key?>" type="checkbox" value="<?php echo $value?>" />
<?php } ?>
<input type ="submit" value ="ok" />
</p>
</form>
Sinon attention avec ta méthode, le dernier pays ne passera jamais dans ta boucle si le premier pays ne se nomme pas pays0. C'est pour cela que je préfère ma méthode avec foreach qui permet de ne pas avoir à se soucier de l'indexation du premier élément.

Re: comment savoir connaitre les valeurs posté

par Invité » 19 août 2010, 16:26

yes man,

C'est good je prends note.

Merci pour ton aide.

Re: comment savoir connaitre les valeurs posté

par xTG » 19 août 2010, 15:57

Tu peux faire en plus court :
foreach($_POST as $key => $valeur)
{
  if( $valeur == true)
    echo "Checkbox " . $key;
}

comment savoir connaitre les valeurs posté

par henri IV » 19 août 2010, 15:17

Bonjour,
j'ai un formulaire avec une centaines de choix dans un checkbox, avec chacun un name=pays1, name=pays2, ...
Donc comment pour connaitre les valeurs POSTés pour faire une INSERT dans la BDD ?
j'ai bien pensé faire quelque chose comme cela mais je ne suis pas sur résultat et pas convaincu que c'est le meilleur choix.

Code : Tout sélectionner

for ($i=0; $i<count($_POST); $i++ ) { if ( ISSET ($_POST["pays.$i"]) ) { echo $_POST["pays.$i" ]; }
dans une boucle ?