Page 1 sur 1

Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 22 avr. 2014, 21:23
par Pepouze18
J'ai créer deux tables materiel/logiciel avec dans la table matériel une liste de pc et dans la table logiciel un petite liste de logiciel. J'ai créer une page comme ci dessous :

http://zupimages.net/up/14/17/8zg5.png


On peut visualiser les tables et par conséquant voir leur id. J'ai ensuite créer deux boutons déroulants avec en contenu les id des champs des tables :
<br></br>
    <form action="" method="post" id=test> 
         <?php 
 
      include 'fonctions.connect.php'; 
      $id_mat = "SELECT id_mat FROM Materiel"; 
      $nom_logi = "SELECT id_log FROM Logiciel";  
      $res2 = mysql_query($id_mat);
      $res3 = mysql_query($nom_logi);
      ?>
                <form action="test.php" id="test"><select name="id_mat" id="nom_mat"> 
                <option value='-1'>----Choisissez l'ID d'un matériel -----</option> 
                <?php 
                while ($row2 = mysql_fetch_array($res2))   
                { 
                $mat = $row2['id_mat']; 
                echo "<option value='$mat'>$mat</option>"; 
                }  
                ?> 
                </SELECT>
                <br></br>
		<div> 
                
                <select name="id_log" id="inv_log"> 
                <option value='-1'>----Choisissez l'ID d'un logiciel -----</option> 
                <?php 
                while ($row3 = mysql_fetch_array($res3))   
                { 
                $nom = $row3['id_log']; 
                echo "<option value='$nom'>$nom</option>"; 
                }  
                ?> 
                 
                </select>
	 	</div> 
        <br></br>
		 <div> <input type="submit", name="submit" Value="Ajouter"></form></div>
     <br></br>

J'ai ensuite ajouter un bouton ajouter,

et je veux que quand on clique dessus, il ajoute l'id du matériel et l'id du logiciel dans une table installer qui aura comme champs id_mat et id_log.

J'ai donc affecter a mon bouton le code php ci dessous :
<?php

include 'fonctions.connect.php';

<?php
if(isset($_POST['id_log'] && $_POST['id_mat']))

{


$id_log = (int) $_POST['id_log']
$id_mat = (int)  $_POST['id_mat']

$sql = "INSERT INTO installer (id_mat,id_log) VALUES ('$id_mat','$id_log' )";
mysql_query($sql) ;

}

?>

Mais ça ne marche pas.

Merci d'avance

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 08:18
par morganK
Remplaces
if(isset($_POST['id_log'] && $_POST['id_mat']))
par
if(isset($_POST['id_log'], $_POST['id_mat']))

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 11:14
par Ibilolzrep
toujours pas, j'ai une erreur quand je clique sur ajouter :

arse error: syntax error, unexpected '<' in C:\wamp\www\test3\test.php on line 5

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 12:27
par morganK
Tu n'as pas besoin de "ré-ouvrir" le PHP, il faut que tu supprimes <?php à la ligne 5.

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 15:29
par Pepouze18
En faisant :
<?php 
 
      include 'fonctions.connect.php'; 
      $id_mat = "SELECT id_mat FROM Materiel"; 
      $nom_logi = "SELECT id_log FROM Logiciel";  
      $res2 = mysql_query($id_mat);
      $res3 = mysql_query($nom_logi);
      ?>
                <form action="test.php" id="test"><select name="test1" id="test1"> 
                <option value='-1'>----Choisissez l'ID d'un matériel -----</option> 
                <?php 
                while ($row2 = mysql_fetch_array($res2))   
                { 
                $mat = $row2['id_mat']; 
                echo "<option value='$mat'>$mat</option>"; 
                }  
                ?> 
                </SELECT>
                <br></br>
  <div> 
                
                <select name="test2" id="test2"> 
                <option value='-1'>----Choisissez l'ID d'un logiciel -----</option> 
                <?php 
                while ($row3 = mysql_fetch_array($res3))   
                { 
                $nom = $row3['id_log']; 
                echo "<option value='$nom'>$nom</option>"; 
                }  
                ?> 
                 
                </select>
   </div> 
        <br></br>
   <div> <input type="submit", name="submit" Value="Ajouter">
            </form></div>
     <br></br>
           <footer>

                        <p class="ligne_dessus"> Réalisé par Thomas Kraëber. </p>
    
                        <p class="barre"></p>  

        </footer>
  </body>
</html>

Avec mon test.php :
<?php

include 'fonctions.connect.php';


if(isset($_POST['test1'], $_POST['test2']))

{


$test1 =  $_POST['test1'];
$test2 =  $_POST['test2'];

$sql = "INSERT INTO installer (id_mat,id_log) VALUES ('$test1','$test2' )";

mysql_query($sql) ;

}

?>
ça ne marche toujours pas

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 15:58
par morganK
Peux-tu poster le résultat de
<?php
include 'fonctions.connect.php';

if(isset($_POST['test1'], $_POST['test2'])) {
    $test1 =  $_POST['test1'];
    $test2 =  $_POST['test2'];

    $sql = "INSERT INTO installer (id_mat,id_log) VALUES ('$test1','$test2' )";

    var_dump(mysql_query($sql));
} else {
    var_dump($_POST);
}

?>
Et à l'occasion, remplaces les fonctions mysql_... par mysqli_... car elles sont obsolète depuis PHP 5.5 !

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 16:00
par morganK
Ajoute
method="POST"
dans ton form, a priori il est a GET par défaut c'est pourquoi ton $_POST doit être vide !

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 16:21
par Pepouze18
Ok, j'ai rajouté la méthode post : <form action="test.php" method="post" id=test><select name="test1" id="test1"> , il me redirige bien vers test.php lors que clique sur ajouter mais rien ne s'ajoute :/

Re: Récupérer valeurs bouton déroulant PHP/MYSQL

Posté : 23 avr. 2014, 16:45
par morganK
Et si tu mets dans test.php les modifications que j'ai posté avant, tu obtiens quel résultat ?