PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 26-11-2012 20:39:15

SuperGlue
Membre
Inscription : 26-11-2012
Messages : 2

Petit problème de codage,

Bonjour,
Je dois restreindre l'accès à mon site, et j'ai codé ceci :


        <?php
     
  if (isset($_POST['code']) AND $_POST['code'] ==  "c1")||(if (isset($_POST['code']) AND $_POST['code'] ==  "c2"))||(if (isset($_POST['code']) AND $_POST['code'] ==  "c3"))

  {
 
  ?>
 

Cela marche bien pour deux codes, mais pas pour trois. Quelqu’un peut m'aider?
Merci :)

Hors ligne

#2 27-11-2012 02:48:04

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Petit problème de codage,

Saluton,
comme ça

<?php
     
  if (isset($_POST['code']) && in_array($_POST['code'], array('c1','c2','c3')))
        {

non ?


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#3 27-11-2012 11:34:54

ManicoW
Cowrespondant
Lieu : Tours
Inscription : 08-05-2009
Messages : 192
Site Web

Re : Petit problème de codage,

Bonjour,

La solution de Maljuna est plus belle a mon sens.

Pour en revenir au code posté initialement, je pense que le problème vient de la répétition du if au sein des conditions. En effet, le code se retrouve de la forme


if ( condition1 || if(condition2) || if(condition3)) {
}
 

alors qu'une formulation correcte est :


if ( condition1 || condition2 || condition3) {
}
 

L'ajout d'un if dans les conditions en fait un if imbriqué et modifie complétement le sens de la condition, ce qui doit provoquer le bug.

@+
ManicoW


la v2, c'est tabou, on en viendra tous a bout

Hors ligne

#4 27-11-2012 16:23:15

SuperGlue
Membre
Inscription : 26-11-2012
Messages : 2

Re : Petit problème de codage,

Merci beaucoup a vous deux, ça marche ! smile

Hors ligne

Pied de page des forums