Problème pour ma loterie |HELP|

xavierleduc62 Messages postés 7 Statut Membre -  
xavierleduc62 Messages postés 7 Statut Membre -
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. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour
    Parenthe manquante dans le if
    0
  2. Pitet Messages postés 2845 Statut Membre 530
     
    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. xavierleduc62 Messages postés 7 Statut Membre
       
      Merci beaucoup pour le code!
      0
  3. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    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. xavierleduc62 Messages postés 7 Statut Membre
       
      Merci beaucoup pour ton code! Mais j'apprends par moi même en autodidacte! Merci encore!
      0