[RESOLU] Comparer 3 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 : [RESOLU] Comparer 3 valeurs POST

Re: Comparer 3 valeurs POST

par devlop78 » 26 mars 2010, 18:24

rhooooo :priere:

Re: Comparer 3 valeurs POST

par AB » 26 mars 2010, 01:07

Tu oublies la règle de base : un programmeur est toujours fénéant :shock:
Ah ben oui, mais faut la préparer sa fainéantise.

En utilisant array_unique, si le nombre de champs à comparer venait à passer à quatre, pas besoin de retoucher au code. Autrement faut refaire le besogneux :)

Re: Comparer 3 valeurs POST

par stealth35 » 25 mars 2010, 17:28

tu triches y'a que 2 valeurs la :mrgreen:
//plus court de faire
if (array_unique($_POST) !== $_POST)) echo "JE SUIS TON PERE";
//que
if ($_POST['a'] == $_POST['b'] || $_POST['a'] == $_POST['c'] || $_POST['b'] == $_POST['c']) echo "NOOOOOOOOOOOOOOOOOONNNNN";

Re: Comparer 3 valeurs POST

par devlop78 » 25 mars 2010, 17:24

Tu oublies la règle de base : un programmeur est toujours fénéant :shock:

Faire une comparaison avec if (ou encore mieux une terniaire) sur 3 éléments est plus rapide que de faire des opérations sur tableau (compte le nombre d'instructions et le nombre de caractères que tu as écris avec tes petits/gros doigts ...). Moi, je suis fénéant et je préfère

($_POST['a'] == $_POST['b']) ? echo "Méchant doublon !" : echo "Cool !!";

que

$montableau = array($_POST['a'], $_POST['b']);
$tabl_comp = array_unique($montableau);
if (count($montableau) != count($tabl_comp)) { echo "Méchant doublon !"; } else { echo "Cool !!"; }

:) Je suis fénéant lol :mrgreen:

Re: Comparer 3 valeurs POST

par stealth35 » 25 mars 2010, 04:52

Oui pour un grand nombre d'éléments, mais pour 3 éléments, te prends pas la tête avec des tableaux !!
je me tâte pour 3 ca fait commence a être limite... vaux mieux prendre de bonne habitude, a voir...

Re: Comparer 3 valeurs POST

par devlop78 » 25 mars 2010, 01:33

Oui pour un grand nombre d'éléments, mais pour 3 éléments, te prends pas la tête avec des tableaux !!

Re: Comparer 3 valeurs POST

par AB » 24 mars 2010, 15:37

if ($_POST['a'] == $_POST['b'] || $_POST['a'] == $_POST['c'] || $_POST['b'] == $_POST['c']) echo "NOOOOOOOOOOOOOOOOOONNNNN";

ça marche pas ça ???
Oui mais si j'ai continué également avec la méthode de stealth35 c'est que ça marcherait aussi pour un grand nombre d'éléments, alors qu'avec cette méthode ce serait très vite pénible à écrire. Donc c'est une façon de faire utile à connaître :wink:

Re: Comparer 3 valeurs POST

par stealth35 » 24 mars 2010, 15:26

if ($_POST['a'] == $_POST['b'] || $_POST['a'] == $_POST['c'] || $_POST['b'] == $_POST['c']) echo "NOOOOOOOOOOOOOOOOOONNNNN";

ça marche pas ça ???
essaye :wink:

(oui ca marche)

Re: Comparer 3 valeurs POST

par devlop78 » 24 mars 2010, 15:21

if ($_POST['a'] == $_POST['b'] || $_POST['a'] == $_POST['c'] || $_POST['b'] == $_POST['c']) echo "NOOOOOOOOOOOOOOOOOONNNNN";

ça marche pas ça ???

Re: Comparer 3 valeurs POST

par stealth35 » 18 mars 2010, 16:45

pour construire un tableau c'est
$arr = array(1, 2, 3);
//pas
$arr = array("1, 2, 3")  //t'as que une valeur ici
et puis pas besoin de construire un autre tableau suffis de le dupliquer :wink:

Re: Comparer 3 valeurs POST

par Ardennais08000 » 18 mars 2010, 16:41

Re bonjour,

j'ai donc fait ceci mais sans succès :

Code : Tout sélectionner

$verif1 = array("$valeur1, $valeur2, $valeur3"); $verif2 = array_unique($verif1); if($verif1 != $verif2) { echo' blabla...'; }
Help ^^

Re: Comparer 3 valeurs POST

par AB » 18 mars 2010, 16:16

Tu mets tes trois variables dans un $premier_tableau. Ensuite tu défini un $second_tableau = array_unique($premier_tableau). Comme array_unique dédoublonne un tableau il te suffit de comparer ensuite tes deux tableaux. S'ils sont identiques c'est qu'il n'y a pas de doublons.

Re: Comparer 3 valeurs POST

par stealth35 » 18 mars 2010, 16:07

array_unique te dedoublonne ton tableau, si il te dedoublonne rien c'est qu'il n'y a pas de doublons, t'aura juste a faire une comparaison entre les 2 tableaux (array_unique et $_POST)

Re: Comparer 3 valeurs POST

par Ardennais08000 » 18 mars 2010, 16:00

Bonjour et merci de ta réponse,

je n'ai jamais utilisé cette fonction :(

Pourrait tu me fournir un exemple concret par rapport à mon problème stp ?

Par avance, merci.

Re: Comparer 3 valeurs POST

par stealth35 » 18 mars 2010, 15:45

hello
tu pourrais te servir, de array_unique et faire une comparaison
:wink: