[RESOLU] Limiter nombre de cases cochées

Eléphant du PHP | 345 Messages

10 nov. 2023, 12:25


if(isset($_POST['jouer'])){
  if(isset($_POST['n'])){
    $cases_cochees = [];
    $n = 0;
    }
    foreach( $_POST['n'] as $valeur){
      $cases_cochees[] = $valeur;
	          $n++;
if($n !=5){
	  echo "VOUS NE DEVEZ COCHER QUE 5 CASES MAXIMUM";
  }
  else{
	la requete d'insertion.......
}
}
}
la condition ne fonctionne pas et le message d'erreur s'affiche (5 fois) :shock:

ynx
Mammouth du PHP | 586 Messages

10 nov. 2023, 13:48

Quelle est la valeur de $n lors du premier tour de la boucle foreach ? Quel est le résultat de la condition ($n != 5) avec la valeur de $n au premier tour ?
Même question pour les tours de boucle suivant.

Mammouth du PHP | 2703 Messages

10 nov. 2023, 17:09

c'est vraiment nécessaire de créer un doublon ?
post475343.html#p475343

Eléphant du PHP | 345 Messages

11 nov. 2023, 11:42

@ or1

Désolé mais j'ai préféré ouvrir un nouveau post car le sujet était devenu différent.

Eléphant du PHP | 345 Messages

11 nov. 2023, 21:08

$n vaut 0

$n++ vaut 1 2 3 4......

question des itérations (itérateurs?) je ne percute pas du tout.

Eléphant du PHP | 345 Messages

12 nov. 2023, 19:18

Bien, après avoir testé x solutions je pense avoir trouvé ce qui me convient:
if(isset($_POST['jouer'])){
  if(isset($_POST['n'])){
    $cases_cochees = [];
 if(isset($_POST['jouer']) && count($_POST['n'])>5){
	 header('Location:warning_xxxxx.php');
	 exit;
 }
    foreach( $_POST['n'] as $valeur){
      $cases_cochees[] = $valeur;
    }
$sql="ici la requete d'insertion du jeu";
......