Valisation des codes allopass par php

  • Auteur de la discussion Auteur de la discussion sff
  • Date de début Date de début
Bonjours, j'ai un petit soucis. J'aimerai vérifier la validité de 4 codes allopass par php.

J'ai cette ligne de code, le problème c'est qu'elle ne vérifie que le premier code.
Code:
if (ereg('ERR', $r[0]) || ereg('NOK', $r[0])) {

echo 'erreur';
}

Il faudrait vérifier en fonction d'une variable. Exemple si $var = 3, on verifie 3 code allopass, si il est égal à 4, on verifie 4 codes allopass. Etc

Avez vous une idée?

Merci
 
oui bien sur j'ai une idée, mais pour te donner un exemple il faudrait plus d'infos.
ou seront tes retours pour les X codes suivants? tous dans la variable array $r ? $r[1] $r[2] etc ?

tu veux chercher la construction conditionnelle switch en php

Code:
switch (expression)
{
case label1:
  code to be executed if expression = label1;
  break;  
case label2:
  code to be executed if expression = label2;
  break;
default:
  code to be executed
  if expression is different 
  from both label1 and label2;
}
 
suite

Oui exact, au lieu de mettre ceci:


Code:
if (ereg('ERR', $r[0]) || ereg('NOK', $r[0])) {// condition 1

echo 'code 1 incorrect';
}
elseif (ereg('ERR', $r[2]) || ereg('NOK', $r[2])) {// condition 2

echo 'code 2 incorrect';
}
elseif (ereg('ERR', $r[4]) || ereg('NOK', $r[4])) {// condition 3

echo 'code 3 incorrect';
}
elseif (ereg('ERR', $r[6]) || ereg('NOK', $r[6])) {// condition 4

echo 'code 4 incorrect';
}else{
echo'code correct';}


On peut utiliser des switch, mais ca ne suffit pas justement. En fait faudrait le faire en fonction d'une variable. Genre si $var = 2 on teste seulement les 2 premières condition, si $var = 3 on teste les 3 première condition. Etc. C'est cela que je sais pas comment faire. Tout le problème étant de tester en fonction de $var.
 
et bien c'est $var que tu vas utiliser dans le switch :
si var = 1 tu ne teste qu'un code, si var = 2 tu teste deux codes, etc.
tu vas imbriquer les IF ELSE dans le switch

switch ($var)
{
case 1:
if code1 = OK then ok else notok;
break;
case 2:
if code1 = OK and code2 = OK then ok else notok;
break;
case 3: etc.
}
 
suite

Ca fait pas térrible comme code je suis sur qu'il y a possibilité de réduire ca.

Code:
switch ($var)
{
case 1:

if (ereg('ERR', $r[0]) || ereg('NOK', $r[0])) {// condition 1

echo 'code 1 incorrect';

}else{echo'correct';
}
break;
case 2:
f (ereg('ERR', $r[0]) || ereg('NOK', $r[0])) {// condition 1

echo 'code 1 incorrect';
}
elseif (ereg('ERR', $r[2]) || ereg('NOK', $r[2])) {// condition 2

echo 'code 2 incorrect';
}else{echo'correct';
}
break;
case 3: 
if (ereg('ERR', $r[0]) || ereg('NOK', $r[0])) {// condition 1

echo 'code 1 incorrect';
}
elseif (ereg('ERR', $r[2]) || ereg('NOK', $r[2])) {// condition 2

echo 'code 2 incorrect';
}
elseif (ereg('ERR', $r[4]) || ereg('NOK', $r[4])) {// condition 3

echo 'code 3 incorrect';
}else{echo'correct';
}
break;
case 4: 
if (ereg('ERR', $r[0]) || ereg('NOK', $r[0])) {// condition 1

echo 'code 1 incorrect';
}
elseif (ereg('ERR', $r[2]) || ereg('NOK', $r[2])) {// condition 2

echo 'code 2 incorrect';
}
elseif (ereg('ERR', $r[4]) || ereg('NOK', $r[4])) {// condition 3

echo 'code 3 incorrect';
}
elseif (ereg('ERR', $r[6]) || ereg('NOK', $r[6])) {// condition 4

echo 'code 4 incorrect';
}else{
echo'code correct';}
break;
}
 
ouais surement mais bon si ca marche ca suffit à moins que tu passes un concours de beauté de script
 

➡️ 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