"comment Faire executer la boucle UPDATE"

Résolu/Fermé
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022 - 29 août 2022 à 15:43
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022 - 29 août 2022 à 17:39

Bonjour à tous, ça fait quelque jours que je cherche faire un UPDATE dans les table que j'ai nommées 'Demandef' et 'Demande' par la suite l'instruction locate() qui va s'executer, mais ce que j'ai remarqué c'est que la dans la boucle IF, les deux instructions de UPDATE sont ignorés et c'est directement l'nstruction locate() qui s'execute

voici le code :

error_reporting ( E_ALL );
ini_set ( 'display_errors', TRUE );
ini_set ( 'display_startup_errors', TRUE );

$id1 = !empty ( $_GET['id1'] ) ? $_GET['id1'] : NULL;
$date1 = !empty ( $_GET['date'] ) ? $_GET['date'] : NULL;
	
$statut = !empty ( $_POST['statut'] ) ?$_POST['statut'] : NULL;	
						
if(!empty($_POST['statut']) && $id1 = !empty ( $_GET['id1'] ) ) {	

$sql = 'UPDATE 	demandef SET statut=? WHERE id1=?';
$datas = array($statut,$id1);
try{
  $req1 = $bdd->prepare($sql);
  $req1->execute($datas);  
} catch ( Exception $e ) {
    // en cas d'erreur :
    echo " Erreur ! " . $e->getMessage ();
    print_r ( $datas );
    exit;
  }	
	
	$sql = 'UPDATE 	demande SET statut=? WHERE id1=?';
$datas = array($statut,$id1);
try{
  $req1 = $bdd->prepare($sql);
  $req1->execute($datas);  
} catch ( Exception $e ) {
    // en cas d'erreur :
    echo " Erreur ! " . $e->getMessage ();
    print_r ( $datas );
    exit;
  }	
header('Location:admin2.php'); 
}?>

voici la capture de la table "Demandef" qui est preque pareil à la table "Demande"

Quelqu'un peut-il me dire pourquoi mes requêtes de mise à jour ne s'éxécutent pas?

Les 2 variables ($statut,$id1) des requêtes UPDATE ont été envoyé sur cette page par le lien URL,

Est-ce parce que les variables de mes requêtes de UPDATE proviennent d'une autre page que mes requêtes ne s'éxécutent pas ?

Quelqu'un peut-il m'aider ? pourquoi les requêtes UPDATE sont ignorés ?

Cordialement

A voir également:

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
Modifié le 29 août 2022 à 15:54

Bonjour,

Déjà... un IF .. n'est pas une BOUCLE  .. ( une boucle ça sert à faire des tours... FOR, WHILE, FOREACH sont des boucles ! )

un IF est un BLOC CONDITIONNEL.

Ensuite..

Ton IF etait faux ..  

Essaye comme ça

<?php
error_reporting ( E_ALL );
ini_set ( 'display_errors', TRUE );
ini_set ( 'display_startup_errors', TRUE );

$id1 = !empty ( $_GET['id1'] ) ? $_GET['id1'] : NULL;
$date1 = !empty ( $_GET['date'] ) ? $_GET['date'] : NULL;
$statut = !empty ( $_POST['statut'] ) ?$_POST['statut'] : NULL;	
						
if( $statut && $id1) {	

  $sql = 'UPDATE 	demandef SET statut=? WHERE id1=?';
  $datas = array($statut,$id1);
  try{
    $req1 = $bdd->prepare($sql);
    $req1->execute($datas);  
  } catch ( Exception $e ) {
      // en cas d'erreur :
      echo " Erreur ! " . $e->getMessage ();
      print_r ( $datas );
      exit;
    }	
    
    $sql = 'UPDATE 	demande SET statut=? WHERE id1=?';
  $datas = array($statut,$id1);
  try{
    $req1 = $bdd->prepare($sql);
    $req1->execute($datas);  
  } catch ( Exception $e ) {
      // en cas d'erreur :
      echo " Erreur ! " . $e->getMessage ();
      print_r ( $datas );
      exit;
  }	
  header('Location:admin2.php'); 
  exit;
}else{
   echo "Statut et/ou id1 n'ont pas été transmis ou sont vides..":
}

0
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022
29 août 2022 à 17:39

J'ai corrigé et ça marché, merci beaucoup Jordane45 pour votre précieuse contribution

0