Simplifier une ligne de code

  • Auteur de la discussion Auteur de la discussion sff
  • Date de début Date de début
Bonjour,

J'aimerais savoir si il y a possibilité de simplifier ce code php ?

if ($_POST['list_equips_1'] == 0 AND $_POST['list_equips_2'] == 0 AND $_POST['list_equips_3'] == 0 AND $_POST['list_equips_4'] == 0 AND $_POST['list_equips_5'] == 0) { }

Merci à ceux qui pourront m'aider.
 
sff a dit:
Bonjour,

J'aimerais savoir si il y a possibilité de simplifier ce code php ?

if ($_POST['list_equips_1'] == 0 AND $_POST['list_equips_2'] == 0 AND $_POST['list_equips_3'] == 0 AND $_POST['list_equips_4'] == 0 AND $_POST['list_equips_5'] == 0) { }

Merci à ceux qui pourront m'aider.

produit nul (a x b x c x d = 0) :idea:
 
Code:
$result = $_POST['list_equips_1']+$_POST['list_equips_2']+$_POST['list_equips_3']+$_POST['list_equips_4'];
if ($result==0) {}
 
Ukri a dit:
sff a dit:
Bonjour,

J'aimerais savoir si il y a possibilité de simplifier ce code php ?

if ($_POST['list_equips_1'] == 0 AND $_POST['list_equips_2'] == 0 AND $_POST['list_equips_3'] == 0 AND $_POST['list_equips_4'] == 0 AND $_POST['list_equips_5'] == 0) { }

Merci à ceux qui pourront m'aider.

produit nul (a x b x c x d = 0) :idea:
Cela n'est pas bon du tout ;)
$_POST['list_equips_1'] = 0 et $_POST['list_equips_2'] = 1 ==> OK pour toi, KO pour lui
Même avec les + c'est pas sûr que c'est bon sauf si toutes ses valeurs sont forcement positives ($_POST['list_equips_1'] = 1 et $_POST['list_equips_2'] = -1)

J'aurais dit val1 == val2 == val3 == val4 == 0 mais ca je ne crois pas que php l'accepte comme condition!
 
Encore une fois, toutes ses méthodes qui se basent sur la somme ne sont valables que si toutes les valeurs sont forcement positives. Sinon obj1 = 1, obj2 = -1 et obj3=obj4=obj5=0.

obj1 + obj2 + obj3 + obj4 + obj5 = 0 alors que obj1 et obj2 sont différents de 0.
 
dans ce cas

Code:
for ($i=0; $i<=5; $i++) $result += abs($_POST['list_equips_$i']);
if ($result == 0) {}
 
jamalofski a dit:
Cela n'est pas bon du tout ;)
$_POST['list_equips_1'] = 0 et $_POST['list_equips_2'] = 1 ==> OK pour toi, KO pour lui
Même avec les + c'est pas sûr que c'est bon sauf si toutes ses valeurs sont forcement positives ($_POST['list_equips_1'] = 1 et $_POST['list_equips_2'] = -1)

J'aurais dit val1 == val2 == val3 == val4 == 0 mais ca je ne crois pas que php l'accepte comme condition!

oups sorry j'avais lu des "OR", pfiou vais prendre des lunettes moa ! :mrgreen:
 
oui :) ... j'avoue que j'ai lu le problème à la va vite :p
mais le principe est d'utiliser la boucle for
 
Code:
if (abs($_POST['list_equips_1'])+abs($_POST['list_equips_2'])+abs($_POST['list_equips_3'])+abs($_POST['list_equips_4'])+abs($_POST['list_equips_5']) == 0)
:wink:
 
et d'une manière générale (je reste dans la bonne idée de la boucle for proposée par les autres membres) :

Code:
function verif_post()
{
  for ($i=1; $i<=5; $i++)
  {
    if ($_POST['list_equips_$i'] != 0) //0 ou autre bien sûr
      return false;
  }
  return true;
}
 
J'ai un petit soucis avec cette boucle :

Code:
for ($i=1; $i<=$nb_total; $i++) $result += abs($_POST['list_potions_'.$i]);
                
				if ($result == 0) {
				
				echo 'oui';

}

j'ai une notice :

Notice: Undefined variable: result ...
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut