Operateur logique ne fonctionne pas

jawadov11 Messages postés 49 Statut Membre -  
jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour, voici mon code il donne la couleur just via date_peremption et pas via le stock comme si il passe pas via le or

**Modifié par la modération pour une lecture plus facile du code, à l'avenir utilisez les balises, VOIR CETTE PAGE
<?php 
$date_peremption=""; 
while($row = $result->fetch_assoc()): ?> 
<tr <?php 
if((strtotime($row['date_peremption'] < strtotime(date('Y-m-d'))or((int)$row['stock_urgence']=0)) // red 
{ 
echo "<td style='background-color: #f09d8e;'>" ; 
} 
else if(strtotime($row['date_peremption']) >= strtotime(date('Y-m-d'))or(int)$row['stock_urgence']>=0)// green or yellow 
{ 
$dif=""; 
$now = time(); // or your date as well 
$your_date = strtotime($row['date_peremption']); 
$datediff = $your_date-$now ; 
$dif=$datediff / (60 * 60 * 24); 
echo round($dif); 
if ((round($dif)>=40)or((int)$row['etat_stock']=0)and(int)$row['stock_urgence']>0){ 
echo "<td style='background-color: #cde8bc;'>" ; 
} 
else // yellow 
{ 
echo "<td style='background-color: #eee7b9;'>"; 
} 
}?>

3 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour
    La comparaison se fait fait avec deux =

    1
    1. jawadov11 Messages postés 49 Statut Membre
       
      merci mais toujours meme problem
      0
  2. jawadov11 Messages postés 49 Statut Membre
     
    meme probleme
     <?php
                $date_peremption="";
                while($row = $result->fetch_assoc()): ?>
                    <tr <?php
                    if((strtotime($row['date_peremption']) < strtotime(date('Y-m-d')))||((int)$row['stock_urgence']==0)) //  green
        {
            echo "<td style='background-color: #f09d8e;'>" ;
        }
        else if(strtotime($row['date_peremption']) >= strtotime(date('Y-m-d'))||(int)$row['stock_urgence']>=0)//  red
        {
            $dif="";
            $now = time(); // or your date as well
            $your_date = strtotime($row['date_peremption']);
            $datediff = $your_date-$now ;
            $dif=$datediff / (60 * 60 * 24);
            echo round($dif);
            if ((round($dif)>=40)||((int)$row['etat_stock']==0)&&(int)$row['stock_urgence']>0){
            echo "<td style='background-color: #cde8bc;'>" ;
             }
        else  //  yellow
        {
            echo "<td style='background-color: #eee7b9;'>";
        }
        }?>
    


    EDIT, : Modifié par la modération pour une lecture plus facile du code, à l'avenir utilisez les balises, VOIR CETTE PAGE : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
    0
  3. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    <?php
    $date_peremption="";
    while($row = $result->fetch_assoc()): ?>
        <tr 
        <?php
        $date_peremption = !empty($row['date_peremption']) ? strtotime($row['date_peremption']) : NULL;
        $now = strtotime(date('Y-m-d'));
        $stock_urgence = !empty($row['stock_urgence']) ? intval($row['stock_urgence']) : 0;
        $etat_stock = !empty($row['etat_stock']) ? intval($row['etat_stock']) : 0;
         
         
        if( $date_peremption< $now || $stock_urgence ==0){
          //  green
          echo "<td style='background-color: #f09d8e;'>" ;
        }elseif( $date_peremption >= $now||$stock_urgence>=0) {
          //  red
          $dif="";
          $nowTime = time(); // or your date as well
          $your_date = !empty($row['date_peremption']) ? strtotime($row['date_peremption']) : 0;
          $datediff = $your_date-$nowTime ;
          $dif=$datediff / (60 * 60 * 24);
          echo round($dif);
          //----------------------------
          //le temps des tests ....
          echo "<br>".$etat_stock;
          echo "<br>".$stock_urgence;
          //----------------------------
          if ( (round($dif)>=40 ||  $etat_stock==0 ) && $stock_urgence>0){
            echo "<td style='background-color: #cde8bc;'>" ;
          } else {
            //  yellow
            echo "<td style='background-color: #eee7b9;'>";
          }
        }
        ?>
    


    NB: Merci de poster ton code correctement à l'avenir.
    Tes messages ont déjà été édités deux fois...
    0