Problème pour ma loterie |HELP|

Voici ce que me dit le code php: Parse error: syntax error, unexpected '{' in /storage/ssd2/800/3385800/public_html/function_trt.php on line 7
<?php

$win=14;
$win1=15;
$win2=16;

if(isset($_POST['loto']) {

if(isset($_POST['loto1'])) {

if(isset($_POST['loto2'])) {

if($win = $_POST['loto']) {

if($win1 = $_POST['loto1']) {

if($win2 = $_POST['loto2']) {

header('location:re-contact.php');

} else {
header('location:index.php?error=Vous avez perdu.');
}

} else {
header('location:index.php?error=Vous avez perdu.');
}

} else {
header('location:index.php?error=Vous avez perdu.');
}

} else {
header('location:index.php?error=Veuillez rentrer vos nombres!');
}

} else {
header('location:index.php?error=Veuillez rentrer vos nombres!');
}

} else {
header('location:index.php?error=Veuillez rentrer vos nombres!');
}
?>

Qui m'aide?

3 réponses

  1. Modérateur
    Bonjour
    Parenthe manquante dans le if
    0
    1. Salut,

      Au passage, attention à l'opérateur dans tes conditions : il faut utiliser un double égal "==" pour effectuer une comparaison, avec un seul égal tu fais une affectation et ton if sera toujours vrai.

      Une version simplifié de tes conditions :
      <?php
      
      $win=14;
      $win1=15;
      $win2=16;
      
      if (!isset($_POST['loto']) || !isset($_POST['loto'])) {
      	header('location:index.php?error=Veuillez rentrer vos nombres!');
      } elseif ($win1 != $_POST['loto1'] || $win2 != $_POST['loto2']) {
      	header('location:index.php?error=Vous avez perdu.');
      } else {
      	header('location:re-contact.php');
      }
      
      


      Bonne journée,
      0
      1. Merci beaucoup pour le code!
        0
    2. Modérateur
      Au passage,
      ton code pourrait s'écrire plus proprement comme ceci :
      <?php
      
      $win=14;
      $win1=15;
      $win2=16;
      
      /**
      * Petite fonction pour récupérer les variables POST proprement
      */
      function getPostVar($varName,$defaultValue=NULL){
      	return !empty($_POST[$varName]) ? $_POST[$varName] : $defaultValue;
      }
      
      //récupération propre des variables AVANT de les utiliser
      $loto = getPostVar('loto',NULL);
      $loto1 = getPostVar('loto1',NULL);
      $loto2 = getPostVar('loto2',NULL);
      
      $error = NULL;
      $result = false;
      if($loto && $loto1 && $loto2){
      	if($loto == $win && $loto1 = $win1 && $loto2=$win2){
      		$result = true;
      	}else{
      		$error = "Vous avez perdu.";
      	}
      }else{
      	$error = "Veuillez rentrer vos nombres!";
      }
      
      if(!empty($error) || $result == false){
          $urlRedirect = 	"index.php?error=".$error;
      }else{
      	$urlRedirect = 	"re-contact.php";
      }
      
      header("location:".$urlRedirect);
      exit(); //toujours mettre un exit après une redirection
      
      
      

      0
      1. Merci beaucoup pour ton code! Mais j'apprends par moi même en autodidacte! Merci encore!
        0