Modification des valeurs d'un tableau
abirgl
Messages postés
147
Statut
Membre
-
Pitet Messages postés 2845 Statut Membre -
Pitet Messages postés 2845 Statut Membre -
Bonjour,
j'ai un tableau php et je veux effectuer des modifications sur quelques colonnes dans des lignes différentes, mon problème c'est que seulement les valeurs de la dernière ligne sont pris sont enregistrées dans toutes les autres,
Je vous montre mon code:
Voici ce qui s'affiche suite à ce code :
http://static.ccm2.net/www.commentcamarche.net/pictures/RMIW1g8ziR5AaQ7DNOcMuC5tx5XqO0cPdvJ6BE9iAMTfeYto0ihXP11iyz7NLfiW-modiftch.png
http://static.ccm2.net/www.commentcamarche.net/pictures/RMIW1g8ziR5AaQ7DNOcMuC5tx5XqO0cPdvJ6BE9iAMTfeYto0ihXP11iyz7NLfiW-modiftch.png
Est ce que le problème est dans la boucle pour qu'il prenne seulement les données de la dernière ligne ? J'ai essayé avec une boucle for et c'est toujours le même résultat, J'espère que vous pourrez m'aider à résoudre ce problème et je vous remercie d'avance
j'ai un tableau php et je veux effectuer des modifications sur quelques colonnes dans des lignes différentes, mon problème c'est que seulement les valeurs de la dernière ligne sont pris sont enregistrées dans toutes les autres,
Je vous montre mon code:
$xlibtch=$_POST['libtache'];
$nbltch=count($xlibtch);
$xheuredebtch=$_POST['heuredebtache'];
$xheurefintch=$_POST['heurefintache'];
echo "<br> Le nombre de taches déjà réalisées est : ".$nbltch."<br>";
$xt=0;
while($xt<$nbltch)
{
$tchToUpd=$xlibtch[$xt];
echo "<br>Libelle Tache".$xt." : ".$tchToUpd."<br>";
$hdebtchToUpd=$xheuredebtch[$xt];
echo "Heure debut de la tache".$xt." : ".$hdebtchToUpd."<br>";
$hfintchToUpd=$xheurefintch[$xt];
echo "Heure Fin de la tache".$xt." : ".$hfintchToUpd."<br>";
$nbHrTch=($hfintchToUpd-$hdebtchToUpd);
echo " Nombre d'heures".$xt." : ".$nbHrTch."<br>";
//Ce traitement est fait pour déterminer le code de la tache à partir de sa libelle
$sql_code_tache="select CodeTache from GI_Taches where Libelle='$tchToUpd' ";
$stmt_code_tache=sqlsrv_query($conn,$sql_code_tache);
$rslt_code_tache=sqlsrv_fetch_array($stmt_code_tache,SQLSRV_FETCH_NUMERIC);
$codeTch=implode($codeTch, $rslt_code_tache);
echo "Code tache : ".$codeTch." <br>";
//Ce traitement est fait pour déterminer le coût par heure de la tache à partir de sa libelle
$sql_coutParHrTch="select CoutparHeure from GI_Taches where Libelle='$tchToUpd'";
$stmt_coutParHrTch=sqlsrv_query($conn, $sql_coutParHrTch);
$rslt_coutParHrTch=sqlsrv_fetch_array($stmt_coutParHrTch, SQLSRV_FETCH_NUMERIC);
$CoutParHrTch=implode($chCoutParHrTch, $rslt_coutParHrTch);
echo "Cout par heure de la tache : ".$CoutParHrTch."<br>";
//Calculer le prix de revient : cout/heure * nbrHeure
$RevientTch=$CoutParHrTch * $nbHrTch;
echo "Revient : ".$RevientTch."<br>";
//Effectuer la modification
$sql_modif_tch="update GI_InterventiontTaches set DateDebut='$datdeb', HeureDebut='$hdebtchToUpd', DateFin='$datdeb', HeureFin='$hfintchToUpd', NombreHeure='$nbHrTch', PrixRevient='$RevientTch' where NIntervention='$idm'";
$stmt_modif_tch=sqlsrv_query($conn,$sql_modif_tch);
if($stmt_modif_tch===false)
{
die(print_r(sqlsrv_errors(),true));
}
else
echo " Modification de la ligne ".$xt." effectuée avec succès <br>";
$xt++;
}
Voici ce qui s'affiche suite à ce code :
http://static.ccm2.net/www.commentcamarche.net/pictures/RMIW1g8ziR5AaQ7DNOcMuC5tx5XqO0cPdvJ6BE9iAMTfeYto0ihXP11iyz7NLfiW-modiftch.png

Est ce que le problème est dans la boucle pour qu'il prenne seulement les données de la dernière ligne ? J'ai essayé avec une boucle for et c'est toujours le même résultat, J'espère que vous pourrez m'aider à résoudre ce problème et je vous remercie d'avance
A voir également:
- Modification des valeurs d'un tableau
- Tableau word - Guide
- Suivi des modifications word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Imprimer un tableau excel - Guide