Erreur:insertion de la valeur 0 dans la base à la place de L'id

Résolu/Fermé
Nouvelle_Informaticienne Messages postés 153 Date d'inscription mercredi 20 avril 2016 Statut Membre Dernière intervention 20 décembre 2021 - Modifié par Nouvelle_Informaticienne le 24/05/2016 à 14:23
Nouvelle_Informaticienne Messages postés 153 Date d'inscription mercredi 20 avril 2016 Statut Membre Dernière intervention 20 décembre 2021 - 25 mai 2016 à 10:26
Bonjour ,
je me permets de vous demander de l'aide a propos de mon probleme,
j'ai essayé de faire un code qui insère les deux id de deux tables dans une table intermédiaire , ce code insère bien une valeur correcte dans sa colonne qui est "id_projet" mais l'autre colonne "id_interv" il la remplie avec la valeur 0
voici mon code :

<?php
//....code 

$sqll="SELECT MAX(id_FPP) AS max_id FROM fiche_prjprincipale";
$reque = mysqli_query($cnx,$sqll) or die( mysqli_error($cnx) ) ;
$row = mysqli_fetch_assoc($reque);

$id=$row["max_id"];

if(isset($_POST['intervcic']) && !empty($_POST['intervcic']))
{
 foreach($intervcic as $valuelist){
                
//REQUETE DE L INSERTION DU ID intervenant DANS LA TABLE intermediaire
$ses = "INSERT INTO fiche_inter (id_interv,id_projet) VALUES ('$valuelist','$id') " ;
$requetee = mysqli_query($cnx,$ses) or die( mysqli_error($cnx) ) ;

 if( $requetee)
  { 
ECHO("bien fait <br>");
  }

 else
  {
echo"non insere";
echo'<br>';
  }

  }
 
 echo("<br>"); echo("<br>");
 
}


//Code .....
?>



je vous remercie beaucoup et bonne journée

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
24 mai 2016 à 20:04
Bonjour,

Essaye ça :
$sql="SELECT MAX(id_FPP) AS max_id FROM fiche_prjprincipale";
$reque = mysqli_query($cnx,$$sql) or die( mysqli_error($cnx) ) ;
 $row = mysqli_fetch_assoc($reque);

//récupération "propre" des variables
 $id=!empty($row["max_id"]) ? $row["max_id"] : 0;
 $intervcic = isset($_POST['intervcic']) ?  $_POST['intervcic'] : null;
 //si intervcic existe et n'est pas vide :
 if($intervcic){
  foreach($intervcic as $valuelist){
                
    //REQUETE DE L INSERTION DU ID intervenant DANS LA TABLE intermediaire
    $sql = "INSERT INTO fiche_inter (id_interv,id_projet) VALUES ('$valuelist','$id') " ;
    $requetee = mysqli_query($cnx,$sql) or die( mysqli_error($cnx) ) ;

    if( $requetee) { 
      echo"bien fait <br>";
    } else {
      echo"non insere";
      echo'<br>';
	  echo "intervcic = ".$intervcic;
	  echo "id = ".$id;
    }

  }
 echo"<br><br>";
 
}

0
Nouvelle_Informaticienne Messages postés 153 Date d'inscription mercredi 20 avril 2016 Statut Membre Dernière intervention 20 décembre 2021 3
Modifié par Nouvelle_Informaticienne le 25/05/2016 à 10:29
Bonjour Monsieur

   echo "id = ".$id;

m'affiche bien les ids

 echo "intervcic = ".$intervcic;

m'affiche les noms de type string de intervenants et non pas les id par contre moi je veux insérer des id de type int c'était ca l'erreur Monsieur

j'ai changé
<option value="<?php echo <gras><ital>$donneees['nom_intervenant'] ?>"><?php echo $donneees['nom_intervenant'].' '.$donneees['prenom_intervenant']?></option>


par
<option value="<?php echo<bold><ital> $donneees['id_intervenant'] <?>"><?php echo $donneees['nom_intervenant'].' '.$donneees['prenom_intervenant']?></option>

et maintenant ca marche bien
je vous remercie monsieur pour votre astuce pour savoir l'erreur
merci bonne journée
0