J'ai un petit soucis pour écrire mes valeurs dans la bdd.
Voila la page ou l'utilisateur remplit ses valeurs il y a autant de valeur à remplir que de nombre de sous-ensemble remplis dans une des pages précédentes :
<form method="post" action="test.php">
<?php
$i=1;
while ($i <= $_SESSION['nombre_sous_ensemble'])
{
$i++;?>
<p>
<fieldset>
<legend>Définition de la pièce</legend>
<label for="nom_sous_ensemble">Nom du sous-ensemble ?</label><br />
<input type="text" name="nom_sous_ensemble[]" class="nom_sous_ensemble" nom="nom_sous_ensemble" /><br />
<label for="poids_sous_ensemble">Poids (en grammes) ?</label><br />
<input type="text" name="poids_sous_ensemble[]" class="poids_sous_ensemble" nom="poids_sous_ensemble" /><br />
</fieldset>
<?php
}
?>
Lors de l'envoi, l'utilisateur génére donc 2 tableaux : "nom_sous_ensemble" et "poids_sous_ensemble"Dans mon fichier "test.php" je voudrai écrire dans ma bdd toutes les valeurs de ces 2 tableaux mais je sais pas trop comment m'y prendre :'(.
J'ai essayer quelque chose comme :
<?php
$nom_sous_ensemble = array ($_POST['nom_sous_ensemble']);
$poids_sous_ensemble = array ($_POST['poids_sous_ensemble']);
// Connexion à la base de données
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=Eco-conception', 'root', '', $pdo_options);
foreach ( $nom_sous_ensemble as $nom_sous_ensemble)
{// Insertion des données à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO sous_ensemble(nom_sous_ensemble, poids_sous_ensemble, date_creation_sous_ensemble) VALUES(?, ?, NOW())');
$req->execute(array($nom_sous_ensemble, $poids_sous_ensemble));
$req->closeCursor();
}
// Redirection du visiteur
header('Location: Eco-evaluation_saisir_piece.php');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
Mais ca marche pas car il faudrait mettre dans foreach les 2 tableaux Quelqu'un pourrait me donner un coup de pouce?
Merci