Probleme $_POST['variable']
iTonton
-
iTonton -
iTonton -
Bonjour chers membres de la communauté CCM ! :)
Voici mon soucis, je suis en train de codé une appli de localisation de pièces détachées, dans l'interface utilisateur, il y a des <SELECT> pour enregistrer une pièce, mais quand je valide mon formulaire, j'obtiens une erreur me disant que les variables sont vides :/
voici mon code (encore inachevés j'en suis conscient mais il devrait fonctionner pour ce que je lui demande) :
Si vous pouviez m'aidez je serais très heureux de connaître mon erreur :)
Dans cette attente, Cordialement
iTonton
Voici mon soucis, je suis en train de codé une appli de localisation de pièces détachées, dans l'interface utilisateur, il y a des <SELECT> pour enregistrer une pièce, mais quand je valide mon formulaire, j'obtiens une erreur me disant que les variables sont vides :/
voici mon code (encore inachevés j'en suis conscient mais il devrait fonctionner pour ce que je lui demande) :
<link rel="stylesheet" href="res/style.css">
<center>
<?php
if(isset($_POST['btn_enr']))
{
// require('connexion.php');
// $req = $connexion->prepare('INSERT INTO piecedet(marque,piece,etagere,planche,bac) VALUES(:marque, :piece, :etagere, :planche, :bac)');
// $req->execute(array(
// 'marque' => $_POST['marque'],
// 'piece' => $_POST['piece'],
// 'etagere' => $_POST['etagere'],
// 'planche' => $_POST['planche'],
// 'bac' => $_POST['bac']
// or die(print_r($connexion->errorInfo()))));
// echo 'La piece a ete enregistree';
echo $_POST['marque'].$_POST['piece'].$_POST['etagere'].$_POST['planche'].$_POST['bac'];
}
?>
<form method="POST" action="">
Marque de la piece :<br>
<select name='marque' class="styled-select">
<option value='0' disabled selected>choissisez la marque</option>
<?php
require('connexion.php');
$resultats=$connexion->query("SELECT * FROM marques ORDER BY marque ASC");
$resultats->setFetchMode(PDO::FETCH_OBJ);
while( $ligne = $resultats->fetch() )
{
echo '<option value="'.$ligne->marque.'">'.$ligne->marque.'</option>'; // on affiche la liste des marques
}
$resultats->closeCursor(); // on ferme le curseur des résultats
?>
</select>
<br>
Type de piece :<br>
<select name='piece' class="styled-select">
<option value='0' disabled selected>choissisez la piece</option>
<?php
require('connexion.php');
$resultats=$connexion->query("SELECT * FROM pieces ORDER BY piece ASC");
$resultats->setFetchMode(PDO::FETCH_OBJ);
while( $ligne = $resultats->fetch() )
{
echo '<option value="'.$ligne->piece.'">'.$ligne->piece.'</option>'; // on affiche la liste des pieces
}
$resultats->closeCursor(); // on ferme le curseur des résultats
?>
</select>
<br>
etagere:<br>
<select name='etagere' class="styled-select">
<option value='0' disabled selected>choissisez l'etagere</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<br>planche:<br>
<select name='planche' class="styled-select">
<option value='0' disabled selected>choissisez la planche</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<br>bac:<br>
<select name='bac' class="styled-select">
<option value='0' disabled selected>choissisez le bac</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select><br><br>
<input type="submit" name="btn_enr" class="styled-btn">
</form>
</center>
Si vous pouviez m'aidez je serais très heureux de connaître mon erreur :)
Dans cette attente, Cordialement
iTonton
1 réponse
-
Bonjour
C'est à cause de tes disabled :<option value='0' disabled selected>
Tous les champs qui sont restés sur cette valeur ne sont pas transmis, donc les $_POST['xxx'] correspondants n'existent pas.
À mon avis, le plus simple est de supprimer tout simplement le 'disabled'. Si tu tiens à les garder, tu dois tester individuellement l'existence de chaque variable avec isset()