[RESOLU] encore un problème de condition!

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] encore un problème de condition!

Re: encore un problème de condition!

par nestor94 » 06 mai 2021, 18:15

Merci Saian, ça semble résolu avec les deux égal. J'ai rajouté exit() après le header car la redirection ne se faisait pas.

Re: encore un problème de condition!

par Saian » 06 mai 2021, 11:38

Salut, si $nbre_recolte est bien égale à 3 alors le problème doit venir du triple = qui sert a tester une égalité stricte. Hors si $nbre_recolte est une chaine '3', c'est différent de 3. Tu dois utiliser dans ce cas le double égale.
php -r "echo '3' === 3 ? 'true' : 'false';" // false
php -r "echo 3 === 3 ? 'true' : 'false';" // true
php -r "echo '3' == 3 ? 'true' : 'false';" // true

encore un problème de condition!

par nestor94 » 06 mai 2021, 11:28

Bonjour,
Pourquoi cette condition en début de script ne s'exécute -t-elle pas? :roll:
<?php
session_start();
require_once 'config.php';
include 'verif_usure.php';
include'verif_PA.php';
$id = !empty($_SESSION['id']) ? $_SESSION['id'] : NULL;
$sql = "SELECT nbre_recolte FROM membres WHERE id=:id";
$pdostat = $bdd->prepare($sql);
$pdostat->bindvalue(':id',$id ,PDO::PARAM_INT);
$pdostat->execute();
$resultat = $pdostat->fetch();    
$nbre_recolte = $resultat['nbre_recolte'];
if ($nbre_recolte === 3)
{
header('Location:new_cycle_exploit_tabac.php');
}
bla bla bla
la suite
le var_dump de $nbre_recolte retourne bien la valeur en table qui est 3....