Problème d'insertion

Résolu/Fermé
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 - 8 nov. 2018 à 16:14
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 - 6 déc. 2018 à 11:50
bonjour ,

j'ai un problème avec la requête insert enfaîte je voudrais insérer les données dans la table équipement
en principe j'ai 4 catégorie et dans la plupart des catégories , il y'a le champs couleur et marque
donc j'ai fait un petit programme qui test si la couleur par exemple de la catégorie service est insérer
->dans c'est celle la que je vais la stocker dans la table du BD

le problème je peux récupérer la donnée( c a d ce que l'utilisateur saisi ) mais je n'arrive pas a l’insérer dans la base
voici la requête
<?php

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
 print_r($_POST); 
 

include  'includes\db.php';



$message='';
$new_equip = !empty($_POST['new_equip']) ? $_POST['new_equip']: NULL;
$taille = !empty($_POST['taille']) ? $_POST['taille']: 0;
$porte = !empty($_POST['porte']) ? $_POST['porte']: 0;
$type_armoire = !empty($_POST['type_armoire']) ? $_POST['type_armoire']: NULL;
$ref = !empty($_POST['ref']) ? $_POST['ref']: 0;


$Couleur_fourniture = !empty($_POST['couleur_fourniture']) ? $_POST['couleur_fourniture']: NULL;
$couleur_informatique = !empty($_POST['couleur_informatique']) ? $_POST['couleur_informatique']: NULL;
$couleur_service = !empty($_POST['couleur_service']) ? $_POST['couleur_service']: NULL;




$page = !empty($_POST['page']) ? $_POST['page']: 0;
$eps = !empty($_POST['eps']) ? $_POST['eps']: 0;
$cape = !empty($_POST['cape']) ? $_POST['cape']: 0;
$serie = !empty($_POST['serie']) ? $_POST['serie']: NULL;
$titre = !empty($_POST['titre']) ? $_POST['titre']: NULL;
$tome = !empty($_POST['tome']) ? $_POST['tome']: NULL;
$annee_edi = !empty($_POST['annee_edi']) ? $_POST['annee_edi']: NULL;
$nb_page = !empty($_POST['nb_page']) ? $_POST['nb_page']: NULL;
$circulation = !empty($_POST['circulation']) ? $_POST['circulation']: NULL;
$marque = !empty($_POST['les_marques']) ? $_POST['les_marques']: NULL;
$sous_categorie = !empty($_POST['sous_categorie']) ? $_POST['sous_categorie']: NULL;
$etat= 'noclassé';

if(isset($_POST) && !empty($_POST['submit']))

  {
	  
$colors = array();	  

$colors[0]='$Couleur_fourniture';
$colors[1]='$couleur_informatique';
$colors[2]='$couleur_service';
$Couleur=NULL;
if ( ($colors[0]== NULL)  and ($colors[1]== NULL) and ($colors[2]== NULL))  {$Couleur=NULL;}
else

if( ($colors[0]!= NULL)  and ($colors[1]== NULL) and ($colors[2]== NULL)) {$Couleur=$colors[0];}
   
else 
	if ( ($colors[0]== NULL)  and ($colors[1]!= NULL) and ($colors[2]== NULL))  {$Couleur=$colors[1];}
		 
	  else if ( ($colors[0]== NULL)  and ($colors[1]== NULL) and ($colors[2]!= NULL)) {$Couleur=$colors[2];}
		      
      
		           
				
				
 $req ="INSERT INTO `equipement` ( `code_equip`, `date_acquisition`, `taille`, `nbre_porte`, `type_armoire`, `reference`, `couleur`, `nbre_page`, `epaisseur`, `capacite_relieure`, `serie`, `titre`, `tome`, `page_bureau`, `annee_edition`, `annee_circulation`, `designation_marque`, `designation_sous_categorie`, `etat_equipement` )
 VALUES
 (
 '".$_POST['code_equip']."',
'".$_POST['dateac']."',
'$taille',
   '$porte',
   '$type_armoire',
   '$ref',
   '$Couleur',
   '$page',
   '$eps',
   '$cape',
   '$serie',
   '$titre',
   '$tome',
   '$annee_edi',
  '$nb_page',
   '$circulation',
   '$marque',
   '$sous_categorie',
   '$etat'
)";

  $run_sql = mysqli_query($conn ,$req);
  if ($run_sql) {
  $message= '<div class="alert alert-info">
  <strong>OK!</strong> Enregistrement avec succées
</div>';
//header('Location: affectation.php'); 
  }

  else
  {
  $message= '<div class="alert alert-warning">
  <strong>Danger!</strong> veuillez réssayer plus tard.
</div>';
	

}
}
else
{
$message='<div class="alert alert-danger">
  <strong>Danger!</strong> Erreur de base de donnée.
</div>';

}
?>


test

Array ( [submit] => Save [code_equip] => 45 [categorie] => 3 [sous_categorie] => Clé USB [dateac] => 2017-12-12 [taille] => [porte] => [type_armoire] => [ref] => [les_marques] => [couleur_fourniture] => [page] => [eps] => [cape] => [serie] => [couleur_informatique] => Violet [titre] => [tome] => [annee_edi] => [nb_page] => [couleur_service] => [circulation] => )
A voir également:

4 réponses

jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
8 nov. 2018 à 16:46
Bonjour,

Fais donc un echo de ta variable $req puis, serts toi de ce qui s'affiche pour tester la requête DIRECTEMENT dans ta bdd (via phpmyadmin par exemple).

0
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 1
13 nov. 2018 à 13:58
voici les résultats après echo $req

INSERT INTO `equipement` ( `code_equip`, `date_acquisition`, `taille`, `nbre_porte`, `type_armoire`, `reference`, `couleur`, `nbre_page`, `epaisseur`, `capacite_relieure`, `serie`, `titre`, `tome`, `page_bureau`, `annee_edition`, `annee_circulation`, `designation_marque`, `designation_sous_categorie`, `etat_equipement` ) VALUES ( '5', '2013-12-10', '0', '0', '', '0', '', '0', '0', '0', '', 'Traité de droit des assurances ,Entreprises et organismes d'assurance', '1', '', '', '', '', 'Assurance et actuariat', 'noclassé' )

mais toujours même message d'erreur :
Danger! veuillez réssayer plus tard.

PS: la requête fonction sous my SQL j'ai essaye d’insérer les données et cela fonctionne très bien.
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
13 nov. 2018 à 14:18
Déjà.. il serait agréable que tu te décides à utiliser les BALISES DE CODE lorsque tu postes du code sur le forum ( y compris les requêtes SQL )
Ensuite... tu n'as certainement pas testé le résultat de ton echo directement dans ta bdd.... ou alors ça n'a pas pu fonctionner....

Je le sais... car tu as une chaine de texte avec une apostrophe.... et donc... que ta requête en l'état n'a pas pu marcher.
On le comprend bien quand on utilise les balises de code... regarde bien le changement de couleur vers la ligne 32 :

INSERT INTO `equipement` ( `code_equip`
     , `date_acquisition`
     , `taille`
     , `nbre_porte`
     , `type_armoire`
     , `reference`
     , `couleur`
     , `nbre_page`
     , `epaisseur`
     , `capacite_relieure`
     , `serie`
     , `titre`
     , `tome`
     , `page_bureau`
     , `annee_edition`
     , `annee_circulation`
     , `designation_marque`
     , `designation_sous_categorie`
     , `etat_equipement` ) 
VALUES ( '5'
     , '2013-12-10'
     , '0'
     , '0'
     , ''
     , '0'
     , ''
     , '0'
     , '0'
     , '0'
     , ''
     , 'Traité de droit des assurances,Entreprises et organismes d'assurance'
     , '1'
     , ''
     , ''
     , ''
     , ''
     , 'Assurance et actuariat'
     , 'noclassé' 
 )



pour y remédier, tourne toi vers : https://www.php.net/manual/fr/mysqli.real-escape-string.php
0
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 1
13 nov. 2018 à 15:54
oui merci , mais toujours je n'arrive pas a insérer la couleur
any help
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
13 nov. 2018 à 16:14
Idem que pour ta question précédente
Print_r de ta variable POST pour t'assurer que la valeur apparaitt bien
Echo de la requête pour la tester DIRECTEMENT dans la bdd
Reviens nous voir avec l’éventuel message d'erreur....
0
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 1
3 déc. 2018 à 15:26
Bonjour jordane45

enfaîte la valeur n’apparaît pas dans le print_r pour les variables post
idem pour la requête les deux champs sont vide
Array ( [submit] => Save [code_equip] => 222 [categorie] => 2 [sous_categorie] => Note repositionnable et prises de notes [dateac] => [taille] => [porte] => [type_armoire] => [ref] => ref12 [marque_bureau] => VERTEX [couleur_fourniture] => Rouge [page] => 200 [eps] => 1.20 [cape] => 60 [serie] => [couleur_informatique] => [marque_Informatique] => [titre] => [tome_ouv] => [annee_edi] => [nb_page] => [couleur_service] => [circulation] => [marque_cuisine] => [marque_service] => ) INSERT INTO `equipement` ( `code_equip`, `date_acquisition`, `taille`, `nbre_porte`, `type_armoire`, `reference`, `couleur`, `nbre_page`, `epaisseur`, `capacite_relieure`, `serie`, `titre`, `tome`, `page_bureau`, `annee_edition`, `annee_circulation`, `designation_marque`, `designation_sous_categorie`, `etat_equipement` ) VALUES ( '222', '', '0', '0', '', 'ref12', '', '200', '1.20', '60', '', '', '0', '', '', '', '', 'Note repositionnable et prises de notes', 'noclassé' )


ma requete SQL

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
 print_r($_POST); 
 

include  'includes\db.php';



$message='';
$new_equip = !empty($_POST['new_equip']) ? $_POST['new_equip']: NULL;
$taille = !empty($_POST['taille']) ? $_POST['taille']: 0;
$porte = !empty($_POST['porte']) ? $_POST['porte']: 0;
$type_armoire = !empty($_POST['type_armoire']) ? $_POST['type_armoire']: NULL;
$ref = !empty($_POST['ref']) ? $_POST['ref']: 0;


$Couleur_fourniture = !empty($_POST['couleur_fourniture']) ? $_POST['couleur_fourniture']: NULL;
$couleur_informatique = !empty($_POST['couleur_informatique']) ? $_POST['couleur_informatique']: NULL;
$couleur_service = !empty($_POST['couleur_service']) ? $_POST['couleur_service']: NULL;




$page = !empty($_POST['page']) ? $_POST['page']: 0;
$eps = !empty($_POST['eps']) ? $_POST['eps']: 0;
$cape = !empty($_POST['cape']) ? $_POST['cape']: 0;
$serie = !empty($_POST['serie']) ? $_POST['serie']: NULL;

$titre = !empty($_POST['titre']) ? $_POST['titre']: NULL;
$tome = !empty($_POST['tome_ouv']) ? $_POST['tome_ouv']: 0;
$annee_edi = !empty($_POST['annee_edi']) ? $_POST['annee_edi']: NULL;
$nb_page = !empty($_POST['nb_page']) ? $_POST['nb_page']: NULL;
$circulation = !empty($_POST['circulation']) ? $_POST['circulation']: NULL;



$marque_bureau = !empty($_POST['marque_bureau']) ? $_POST['marque_bureau']: NULL;
$marque_Informatique = !empty($_POST['marque_Informatique']) ? $_POST['marque_Informatique']: NULL;
$marque_cuisine = !empty($_POST['marque_cuisine']) ? $_POST['marque_cuisine']: NULL;
$marque_service = !empty($_POST['marque_service']) ? $_POST['marque_service']: NULL;

$sous_categorie = !empty($_POST['sous_categorie']) ? $_POST['sous_categorie']: NULL;
$etat= 'noclassé';

if(isset($_POST) && !empty($_POST['submit']))

  {
	  
$colors = array();	  

$colors[0]='$Couleur_fourniture';
$colors[1]='$couleur_informatique';
$colors[2]='$couleur_service';
$Couleur=NULL;
if ( ($colors[0]== NULL)  and ($colors[1]== NULL) and ($colors[2]== NULL))  {$Couleur=NULL;}
else

if( ($colors[0]!= NULL)  and ($colors[1]== NULL) and ($colors[2]== NULL)) {$Couleur=$colors[0];}
   
else 
	if ( ($colors[0]== NULL)  and ($colors[1]!= NULL) and ($colors[2]== NULL))  {$Couleur=$colors[1];}
		 
	  else if ( ($colors[0]== NULL)  and ($colors[1]== NULL) and ($colors[2]!= NULL)) {$Couleur=$colors[2];}

$marque = array();
$marque[0]='$marque_bureau';  
$marque[1]='$marque_Informatique';   
$marque[2]='$marque_cuisine';  
$marque[3]='$marque_service';   

$marque=NULL;
	if(($marque[0]== NULL) and ($marque[1]== NULL) and ($marque[2]== NULL) and ($marque[3]== NULL))	 { $marque=NULL;}          	           
	else if (($marque[0]!= NULL) and ($marque[1]== NULL) and ($marque[2]== NULL) and ($marque[3]== NULL))	 { $marque=$marque[0];}     	
          else if (($marque[0]== NULL) and ($marque[1]!= NULL) and ($marque[2]== NULL) and ($marque[3]== NULL))	 { $marque=$marque[1];}  
                   else if (($marque[0]== NULL) and ($marque[1]== NULL) and ($marque[2]!= NULL) and ($marque[3]== NULL))	 { $marque=$marque[2];}  
                         else if (($marque[0]== NULL) and ($marque[1]== NULL) and ($marque[2]== NULL) and ($marque[3]!= NULL))	 { $marque=$marque[3];}  
	
	$titre = mysql_real_escape_string($_POST['titre']);			
 $req ="INSERT INTO `equipement` ( `code_equip`, `date_acquisition`, `taille`, `nbre_porte`, `type_armoire`, `reference`, `couleur`, `nbre_page`, `epaisseur`, `capacite_relieure`, `serie`, `titre`, `tome`, `page_bureau`, `annee_edition`, `annee_circulation`, `designation_marque`, `designation_sous_categorie`, `etat_equipement` )
 VALUES
 (
 '".$_POST['code_equip']."',
'".$_POST['dateac']."',
'$taille',
   '$porte',
   '$type_armoire',
   '$ref',
   '$Couleur',
   '$page',
   '$eps',
   '$cape',
   '$serie',
   '$titre',
   '$tome',
   '$annee_edi',
  '$nb_page',
   '$circulation',
   '$marque',
   '$sous_categorie',
   '$etat'
)";
echo $req;
  $run_sql = mysqli_query($conn ,$req);
  if ($run_sql) {
	  
 /* $message= '<div class="alert alert-info">
  <strong>OK!</strong> Enregistrement avec succées
</div>';*/
//header('Location: affectation.php'); 
  }

  else
  {
  $message= '<div class="alert alert-warning">
  <strong>Danger!</strong> veuillez réssayer plus tard.
</div>';
	

}
}
else
{
$message='<div class="alert alert-danger">
  <strong>Danger!</strong> Erreur de base de donnée.
</div>';

}




PS : je n'arrive pas a insérer j'ai reçu le message d'erreur Danger! veuillez réssayer plus tard.
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
3 déc. 2018 à 16:36

la valeur n’apparaît pas dans le print_r pour les variables post

C'est donc que ton souci se situe au niveau de ton formulaire....
Quel est le code html de ton formulaire ?
Quel est le champ qui contient la valeur que tu souhaites récupérer ? Y as tu mis un attribut NAME ? Il se trouve bien entre les balises "FORM" ?
0
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 1
4 déc. 2018 à 14:36
voici mon code html
<body>
		<?php include 'includes/header.php';?>
		<div class="container">
     <form   action="" method="POST" enctype="multipart/form-data">		

     <?php

if(isset($_POST) && !empty($_POST['submit']))
  {
    echo $message;
  }

?>

<br>
	
<div class="col-lg-2"></div>
      <div class="row">
<div class="col-lg-8">

 <input  type="submit" class="btn btn-info pull-right"  name="submit" value="Save"  \>  

<br>
<br>
   <div class="form-group">
  <label for="usr">Code équipement:</label>
  <input type="text" class="form-control" id="code" name="code_equip" style="border-color:#877277;">

</div>


<!-- catégorie-->
<label> les catégories *:</label>
<div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span>
<!-- Script -->
  <script src="includes/jquery-3.0.0.js"></script>

    <script type='text/javascript'>
      $(document).ready(function(){
                        
        // Speciality change
          $('#form-categorie').change(function(){
            var cat = $(this).val();                  

              // AJAX request
                $.ajax({
                  url: 'liste.php',
                  method: 'POST',
                  data: {cat: cat},
                  dataType: 'json',
                  success: function(response){

                  // Remove options
                  $('#form_sous_categorie').find('option').not(':first').remove();

                    // Add options
                      $.each(response,function(index,data){
                        $('#form_sous_categorie').append('<option value="'+data['designation_sous_categorie']+'">'+data['designation_sous_categorie']+'</option>');
                      });
                      }
                    });

                   }); 
                                     
                });
    </script>
  <select class="form-control" name="categorie" id="form-categorie">
    <option value="">Séléctionner une catégorie</option>';
		  <?php 
			  $requete_liste= "SELECT * FROM `categorie` order by `designation_categorie` asc";
        $resultat_liste=mysqli_query($conn, $requete_liste);
			  while($co = mysqli_fetch_assoc($resultat_liste)){
    	      $id_categorie=$co['Id_categorie'];
		      $designation_categorie=$co['designation_categorie'];?>
    <option value="<?php echo $id_categorie; ?>"><?php echo $designation_categorie; ?></option>
        <?php }?>
  </select>
</div>
        <label> les sous  catégories *:</label>
         <div class="input-group">
<span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span>
        <select class="form-control" id="form_sous_categorie" name="sous_categorie">
          <option value="">Séléctionner une  sous catégorie</option>';
        </select>
        </div>

<!--Champs obligatoires-->


   <div class="form-group">
  <label for="usr">Date acquisition *:</label>
  <input type="date" class="form-control" id="dateac" name="dateac">
</div>


</div>   


  </div>

<br>

<ul class="nav nav-tabs">
    <li class="active"><a data-toggle="tab" href="#home">Siége et mobilier</a></li>
    <li><a data-toggle="tab" href="#menu1">Fourniture bureau</a></li>
   <li><a data-toggle="tab" href="#menu2">Informatique & High-Tech</a></li>
    <li><a data-toggle="tab" href="#menu3">Ouvrage</a></li>
    <li><a data-toggle="tab" href="#menu4">Service bureau</a></li>
    <li><a data-toggle="tab" href="#menu5">Accessoire cuisine</a></li>
</ul>

<div class="tab-content">
  <div id="home" class="tab-pane fade in active">
  <div class="form-group">
    <label for="taille">Taille:</label>
    <input type="text" class="form-control" id="taille"  name="taille">
  </div>
  <div class="form-group">
    <label for="porte">Numéro de porte:</label>
    <input type="number" class="form-control" id="porte" name="porte">
  </div>

<div class="form-group">
<label for="porte">Type armoire:</label>

  <select class="form-control" name="type_armoire">
 <option value=""></option>
    <option value="Semi-vitrée">Semi-vitrée</option>
    <option value="Vitrée">Vitrée</option>
    <option value="Métallique">Métallique</option>
    <option value="Bahut">Bahut</option>
    <option value="Pleine">Pleine</option>
    </select>
    </div>
  </div>




    <div id="menu1" class="tab-pane fade">
  <div class="form-group">
    <label for="Réference">Réference:</label>
    <input type="text" class="form-control" id="Réference" name="ref">
  </div>
 <div class="form-group">
<label >Marque:</label>
  <select class="form-control" name="marque_bureau">

<?php
$requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=2";
$resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error);
echo'  <option></option>';
if(mysqli_num_rows($resultat)>0)
{
while ($row = mysqli_fetch_assoc($resultat))
 {
echo' 

<option>'.$row['designation_marque'].'</option>';
}
}
else
{
  }

?>
   </select>
</div>
<div class="form-group">
<label>Couleur:</label>
  <select class="form-control" name="couleur_fourniture">
     <option value=""></option>
    <option value="Rouge">Rouge</option>
    <option value="Noir">Noir</option>
    <option value="Blanc">Blanc</option>
    <option value="Jaune">Jaune</option>
    <option value="Vert">Vert</option>
    <option value="Gris">Gris</option>
    <option value="Marron">Marron</option>
    <option value="Pink">Pink</option>
    <option value="Violet">Violet</option>
    <option value="Orange">Orange</option>

  </select>
</div>

  <div class="form-group">
    <label for="page">Nombre de page:</label>
    <input type="text" class="form-control" id="page" name="page">
  </div>
    <div class="form-group">
    <label for="eps">Epaisseur:</label>
    <input type="text" class="form-control" id="eps" name="eps">
  </div>
    <div class="form-group">
    <label for="cap">Capacité relieure:</label>
    <input type="text" class="form-control" id="cape" name="cape">
  </div>

    </div>

 <div id="menu2" class="tab-pane fade">
  <div class="form-group">
    <label for="serie">Serie:</label>
    <input type="text" class="form-control" id="serie"     name="serie" />
  </div>
 
<div class="form-group">
<label>Couleur:</label>
  <select class="form-control" name="couleur_informatique">
    <option value=""></option>
    <option value="Rouge">Rouge</option>
    <option value="Noir">Noir</option>
    <option value="Blanc">Blanc</option>
    <option value="Jaune">Jaune</option>
    <option value="Vert">Vert</option>
    <option value="Gris">Gris</option>
    <option value="Marron">Marron</option>
    <option value="Pink">Pink</option>
    <option value="Violet">Violet</option>
    <option value="Orange">Orange</option>
  </select>
</div>


<div class="form-group">
<label >Marque:</label>
  <select class="form-control" name="marque_Informatique">

<?php
$requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=3";
$resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error);
echo ' <option></option>';
if(mysqli_num_rows($resultat)>0)
{
while ($row = mysqli_fetch_assoc($resultat))
 {
echo' 

<option>'.$row['designation_marque'].'</option>';
}
}
else
{
  }

?>
   </select>
</div>



</div>


    <div id="menu3" class="tab-pane fade">
 <div class="form-group">
    <label for="titre">Titre:</label>
    <input type="text" class="form-control" id="titre" name="titre"/>
  </div>

   <div class="form-group">
    <label for="tome">Tome:</label>
    <input type="number" class="form-control" id="tome"   name="tome_ouv"/>
  </div>
   <div class="form-group">
    <label for="annee">Année edition :</label>
    <input type="text" class="form-control" id="annee"  name="annee_edi" />
  </div>
   <div class="form-group">
    <label for="npage">Nombre page:</label>
    <input type="text" class="form-control" id="npage" name="nb_page"/>
  </div>
    </div>



        <div id="menu4" class="tab-pane fade">

   <div class="form-group">
<label>Couleur:</label>
  <select class="form-control" name="couleur_service">
   <option value=""></option>
    <option value="Rouge">Rouge</option>
    <option value="Noir">Noir</option>
    <option value="Blanc">Blanc</option>
    <option value="Jaune">Jaune</option>
    <option value="Vert">Vert</option>
    <option value="Gris">Gris</option>
    <option value="Marron">Marron</option>
    <option value="Pink">Pink</option>
    <option value="Violet">Violet</option>
    <option value="Orange">Orange</option>
  </select>
</div>
  
   <div class="form-group">
    <label for="circulation">Année circulation:</label>
    <input type="text" class="form-control" id="cir" name="circulation"/>
  </div>


    <div class="form-group">
<label>Marque:</label>
  <select class="form-control" name="marque_cuisine">
<
  <?php

$requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=5";
$resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error);
echo'  <option></option>';
if(mysqli_num_rows($resultat)>0)
{
while ($row = mysqli_fetch_assoc($resultat))
 {
echo' 

<option>'.$row['designation_marque'].'</option>';
}
}
else
{
  }

?>
   </select>
</div>
    </div>




<div id="menu5" class="tab-pane fade">
      <div class="form-group">
<label>Marque:</label>
  <select class="form-control" name="marque_service">

  <?php
 
$requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=6";
$resultat = $conn->query($requete) or die ('Erreur '.$requete.' '.$conn->error);
  echo ' <option></option>';
if(mysqli_num_rows($resultat)>0)
{
while ($row = mysqli_fetch_assoc($resultat))
 {
echo' 

<option>'.$row['designation_marque'].'</option>';
}
}
else
{
  }

?>
   </select>
</div>
    </div>
<br>
<br>
<br>
<br>
  </div>













</form>


</div>


      










  </div>


 <?php include 'includes/footer.php';?>

	</body>
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
Modifié le 4 déc. 2018 à 15:59
Bon... y'aurait beaucoup à dire sur ton code...
Déjà quelques erreurs de html et des tonnes de else inutiles... que j'ai corrigé ici :
<?php
// ON PLACE le MAXIMUM de php AVANT LE HTML !
// ON active les erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);


if (isset($_POST) && !empty($_POST['submit'])) {
  print_r($_POST);
  //echo $message; // la variable $message n'existe pas.. donc ça te retournera une erreur !
}
?>

<body>
  <?php include 'includes/header.php'; ?>
  <div class="container">
    <form action="" method="POST" enctype="multipart/form-data">  
      <br>
      <div class="col-lg-2"></div>
      <div class="row">
        <div class="col-lg-8">
          <input  type="submit" class="btn btn-info pull-right"  name="submit" value="Save"  \>  
          <br>
          <br>
          <div class="form-group">
            <label for="usr">Code équipement:</label>
            <input type="text" class="form-control" id="code" name="code_equip" style="border-color:#877277;">

          </div>
          <!-- catégorie-->
          <label> les catégories *:</label>
          <div class="input-group">
            <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span>
            
            <select class="form-control" name="categorie" id="form-categorie">
              <option value="">Séléctionner une catégorie</option>';
              <?php
              $requete_liste = "SELECT * FROM `categorie` order by `designation_categorie` asc";
              $resultat_liste = mysqli_query($conn, $requete_liste);
              while ($co = mysqli_fetch_assoc($resultat_liste)) {
                $id_categorie = $co['Id_categorie'];
                $designation_categorie = $co['designation_categorie'];
                ?>
                <option value="<?php echo $id_categorie; ?>"><?php echo $designation_categorie; ?></option>
              <?php } ?>
            </select>
          </div>
          <label> les sous  catégories *:</label>
          <div class="input-group">
            <span class="input-group-addon"><i class="glyphicon glyphicon-th-list"></i></span>
            <select class="form-control" id="form_sous_categorie" name="sous_categorie">
              <option value="">Séléctionner une  sous catégorie</option>';
            </select>
          </div>
          <!--Champs obligatoires-->
          <div class="form-group">
            <label for="usr">Date acquisition *:</label>
            <input type="date" class="form-control" id="dateac" name="dateac">
          </div>
        </div>   
      </div>
      <br>
      <ul class="nav nav-tabs">
        <li class="active"><a data-toggle="tab" href="#home">Siége et mobilier</a></li>
        <li><a data-toggle="tab" href="#menu1">Fourniture bureau</a></li>
        <li><a data-toggle="tab" href="#menu2">Informatique & High-Tech</a></li>
        <li><a data-toggle="tab" href="#menu3">Ouvrage</a></li>
        <li><a data-toggle="tab" href="#menu4">Service bureau</a></li>
        <li><a data-toggle="tab" href="#menu5">Accessoire cuisine</a></li>
      </ul>
      <div class="tab-content">
        <div id="home" class="tab-pane fade in active">
          <div class="form-group">
            <label for="taille">Taille:</label>
            <input type="text" class="form-control" id="taille"  name="taille">
          </div>
          <div class="form-group">
            <label for="porte">Numéro de porte:</label>
            <input type="number" class="form-control" id="porte" name="porte">
          </div>
          <div class="form-group">
            <label for="porte">Type armoire:</label>

            <select class="form-control" name="type_armoire">
              <option value=""></option>
              <option value="Semi-vitrée">Semi-vitrée</option>
              <option value="Vitrée">Vitrée</option>
              <option value="Métallique">Métallique</option>
              <option value="Bahut">Bahut</option>
              <option value="Pleine">Pleine</option>
            </select>
          </div>
        </div>
        <div id="menu1" class="tab-pane fade">
          <div class="form-group">
            <label for="Réference">Réference:</label>
            <input type="text" class="form-control" id="Réference" name="ref">
          </div>
          <div class="form-group">
            <label >Marque:</label>
            <select class="form-control" name="marque_bureau">
              <?php
              $requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=2";
              $resultat = $conn->query($requete) or die('Erreur ' . $requete . ' ' . $conn->error);
              echo'  <option></option>';
              if (mysqli_num_rows($resultat) > 0) {
               while ($row = mysqli_fetch_assoc($resultat)) {
                    echo'<option value="'.$row['designation_marque'].'">' . $row['designation_marque'] . '</option>';
                  }
              } 
              ?>
            </select>
          </div>
          <div class="form-group">
            <label>Couleur:</label>
            <select class="form-control" name="couleur_fourniture">
              <option value=""></option>
              <option value="Rouge">Rouge</option>
              <option value="Noir">Noir</option>
              <option value="Blanc">Blanc</option>
              <option value="Jaune">Jaune</option>
              <option value="Vert">Vert</option>
              <option value="Gris">Gris</option>
              <option value="Marron">Marron</option>
              <option value="Pink">Pink</option>
              <option value="Violet">Violet</option>
              <option value="Orange">Orange</option>

            </select>
          </div>

          <div class="form-group">
            <label for="page">Nombre de page:</label>
            <input type="text" class="form-control" id="page" name="page">
          </div>
          <div class="form-group">
            <label for="eps">Epaisseur:</label>
            <input type="text" class="form-control" id="eps" name="eps">
          </div>
          <div class="form-group">
            <label for="cap">Capacité relieure:</label>
            <input type="text" class="form-control" id="cape" name="cape">
          </div>

        </div>

        <div id="menu2" class="tab-pane fade">
          <div class="form-group">
            <label for="serie">Serie:</label>
            <input type="text" class="form-control" id="serie" name="serie" />
          </div>

          <div class="form-group">
            <label>Couleur:</label>
            <select class="form-control" name="couleur_informatique">
              <option value=""></option>
              <option value="Rouge">Rouge</option>
              <option value="Noir">Noir</option>
              <option value="Blanc">Blanc</option>
              <option value="Jaune">Jaune</option>
              <option value="Vert">Vert</option>
              <option value="Gris">Gris</option>
              <option value="Marron">Marron</option>
              <option value="Pink">Pink</option>
              <option value="Violet">Violet</option>
              <option value="Orange">Orange</option>
            </select>
          </div>
          <div class="form-group">
            <label >Marque:</label>
            <select class="form-control" name="marque_Informatique">
                <?php
                $requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=3";
                $resultat = $conn->query($requete) or die('Erreur ' . $requete . ' ' . $conn->error);
                echo ' <option></option>';
                if (mysqli_num_rows($resultat) > 0) {
                  while ($row = mysqli_fetch_assoc($resultat)) {
                    echo'<option value="'.$row['designation_marque'].'">' . $row['designation_marque'] . '</option>';
                  }
                }
                ?>
            </select>
          </div>
        </div>

        <div id="menu3" class="tab-pane fade">
          <div class="form-group">
            <label for="titre">Titre:</label>
            <input type="text" class="form-control" id="titre" name="titre"/>
          </div>

          <div class="form-group">
            <label for="tome">Tome:</label>
            <input type="number" class="form-control" id="tome"   name="tome_ouv"/>
          </div>
          <div class="form-group">
            <label for="annee">Année edition :</label>
            <input type="text" class="form-control" id="annee"  name="annee_edi" />
          </div>
          <div class="form-group">
            <label for="npage">Nombre page:</label>
            <input type="text" class="form-control" id="npage" name="nb_page"/>
          </div>
        </div>

        <div id="menu4" class="tab-pane fade">

          <div class="form-group">
            <label>Couleur:</label>
            <select class="form-control" name="couleur_service">
              <option value=""></option>
              <option value="Rouge">Rouge</option>
              <option value="Noir">Noir</option>
              <option value="Blanc">Blanc</option>
              <option value="Jaune">Jaune</option>
              <option value="Vert">Vert</option>
              <option value="Gris">Gris</option>
              <option value="Marron">Marron</option>
              <option value="Pink">Pink</option>
              <option value="Violet">Violet</option>
              <option value="Orange">Orange</option>
            </select>
          </div>

          <div class="form-group">
            <label for="circulation">Année circulation:</label>
            <input type="text" class="form-control" id="cir" name="circulation"/>
          </div>

          <div class="form-group">
            <label>Marque:</label>
            <select class="form-control" name="marque_cuisine">
              <?php
              $requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`= 5 ";
              $resultat = $conn->query($requete) or die('Erreur ' . $requete . ' ' . $conn->error);
              echo'  <option></option>';
              if (mysqli_num_rows($resultat) > 0) {
                while ($row = mysqli_fetch_assoc($resultat)) {
                  echo'<option value="'.$row['designation_marque'].'">' . $row['designation_marque'] . '</option>';
                }
              } 
              ?>
            </select>
          </div>
        </div>
        <div id="menu5" class="tab-pane fade">
          <div class="form-group">
            <label>Marque:</label>
            <select class="form-control" name="marque_service">
              <?php
              $requete = "SELECT `designation_marque` FROM `categorie_marque` WHERE `Id_categorie`=6";
              $resultat = $conn->query($requete) or die('Erreur ' . $requete . ' ' . $conn->error);
              echo ' <option></option>';
              if (mysqli_num_rows($resultat) > 0) {
                while ($row = mysqli_fetch_assoc($resultat)) {
                  echo'<option value="'.$row['designation_marque'].'">' . $row['designation_marque'] . '</option>';
                }
              }
              ?>
            </select>
          </div>
        </div>
        <br>
        <br>
        <br>
        <br>
      </div>
    </form>
  </div>
</div>
<?php include 'includes/footer.php'; ?>
<!-- ON PLACE LE JS A LA FIN DE LA PAGE -->
<!-- Script -->
<script src="includes/jquery-3.0.0.js"></script>
<script type='text/javascript'>
  $(document).ready(function () {

    // Speciality change
    $('#form-categorie').change(function () {
      var cat = $(this).val();

      // AJAX request
      $.ajax({
        url: 'liste.php',
        method: 'POST',
        data: {cat: cat},
        dataType: 'json',
        success: function (response) {

          // Remove options
          $('#form_sous_categorie').find('option').not(':first').remove();

          // Add options
          $.each(response, function (index, data) {
            $('#form_sous_categorie').append('<option value="' + data['designation_sous_categorie'] + '">' + data['designation_sous_categorie'] + '</option>');
          });
        }
      });

    });

  });
</script>
</body>



Après..il reste encore du travail !
Tu persistes à mélanger du mysqli objet avec du style procédural...
Sans oublier qu'en mysqli on n'utiliser pas les " OR DIE " ... il suffit de voir les exemples du manuel php pour avoir la bonne syntaxe... mais j'ai autre chose à faire que de réécrire ton code.
A toi de suivre les bonnes pratiques...



0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
4 déc. 2018 à 15:20
Pour la doc :
https://www.php.net/manual/fr/mysqli.error.php
https://www.php.net/manual/fr/mysqli-result.num-rows.php

Sachant que tu dois regarder le style "OBJET" puisque c'est celui la que tu sembles avoir utilisé pour ta connexion à la bdd.
Faut rester cohérent.
0
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 1
4 déc. 2018 à 15:37
merci jordane45
oui , je dois adapter soit le procédural soit le orienté objet ( problème du temps )
pour la requête le même problème je n'arrive pas a insérer ni la marque ni la couleur
dans la bd je retrouve les champs vides
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
4 déc. 2018 à 16:04
dans la bd je retrouve les champs vides

Mais que t'affiche le print_r($_POST) ?
Ces variables y sont présentes au moins ??
Et de quelle "marque" parles tu ? marque cuisine ? marque bureau ? autre ???

Tu as bien mis des "value" dans tes <option> ?
while ($row =$resultat->fetch_assoc()) {
                  echo'<option value="'.$row['designation_marque'].'">' . $row['designation_marque'] . '</option>';
                }
0
deep_sea Messages postés 201 Date d'inscription mardi 10 mai 2016 Statut Membre Dernière intervention 10 décembre 2022 1
5 déc. 2018 à 15:50
le print_r($_POST) affiche la marque que j'ai choisi Vertex idem pour la couleur Rouge
Array ( 
[submit] => Save
 [code_equip] => zzz
 [categorie] => 2
 [sous_categorie] => Note repositionnable et prises de notes
 [dateac] => 2012-01-01
 [taille] => 
[porte] => 
[type_armoire] => 
[ref] => ref12 
[marque_bureau] => VERTEX 
[couleur_fourniture] => Rouge
 [page] => 200
 [eps] => 1.20 
[cape] => 60 
[serie] => 
[couleur_informatique] => 
[marque_Informatique] => 
[titre] => [tome_ouv] =>
 [annee_edi] => 
[nb_page] =>
 [couleur_service] =>
 [circulation] => 
[marque_cuisine] => 
[marque_service] => ) 

Mais dans la base de donnée je ne trouve pas les valeurs toujours un vide

INSERT INTO `equipement`
 ( `code_equip`, 
`date_acquisition`,
`taille`,
 `nbre_porte`, 
`type_armoire`,
 `reference`,
 `couleur`,
 `nbre_page`,
 `epaisseur`, 
`capacite_relieure`, 
`serie`,
 `titre`, 
`tome`, 
`page_bureau`, 
`annee_edition`,
 `annee_circulation`,
 `designation_marque`, 
`designation_sous_categorie`, 
`etat_equipement` ) 
VALUES 
( 
'zzz', 
'2012-01-01', 
'0', 
'0', 
'',
 'ref12',
 '', 
'200',
 '1.20',
 '60',
 '', 
'',
 '0', 
'', '
', 
'',
 '', 
'Note repositionnable et prises de notes',
 'noclassé'
 )
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
5 déc. 2018 à 16:06
Dis donc.. je viens de voir :

$colors[0]='$Couleur_fourniture';
$colors[1]='$couleur_informatique';
$colors[2]='$couleur_service';
$Couleur=NULL;


$marque[0]='$marque_bureau';  
$marque[1]='$marque_Informatique';   
$marque[2]='$marque_cuisine';  
$marque[3]='$marque_service';

Tu sais ce que ça fait de mettre des simples quotes autour d'une variable ? .. et bien...elle n'est pas interprétée...

par exemple, teste ce code :
$toto = "Bonjour";

echo $toto;
echo '$toto';
echo "$toto";


Attention quand même .. ce n'est pas le cas lorsque la chaine est elle même comprise entre double-quotes
echo " '$toto' "; // là la chaine est correctement interprétée ... et affichera donc : 'bonjour'



Pour en revenir à ton souci, une fois que tu auras apporté la correction que je viens de t'indiquer... postes nous le code de ta requête ainsi qu'un echo de celle-ci.
0