Bonjour ! ;D
Je bloque sur un problème depuis maintenant 3 jours c'est pourquoi je viens vous demander un petit peu d'aide
Donc pour faire simple, j'essai de monter un script qui me permeterais :
- D'afficher sous forme de tableau les lignes d'une table comportant une valeur particulière d'un champ (ici, ce champ se nomme ID_JB)
- Que dans ce tableau, les valeurs de ces lignes s'affichent sous forme d'INPUT et ce, a l’intérieur d'un formulaire
- Et enfin, apres avoir modifié les valeurs des lignes, envoyer les nouvelle valeurs dans ma base à l'aide d'une requete UPDATE
Bref l'affichage des lignes contenant l'id de l'url fonctionne, mais apres avoir modifié les valeurs, lorsque je clique sur le bouton submit, bah la requête ne s'execute pas correctement, vu qu'il n'arrive pas a me retrouver les valeurs modifié dans les $value['DEVICES'], $value['NAME'] ect.. de la requete.
Donc en gros lorsque je lance la requete avec les valeurs modifiée, il va me remplacer les valeur des champ DEVICES, NAME, LINK, LANG, RATE de l'id $key, par un vide.
Voici mon code :
Et voici mon problème en ligne : http://heavydub.1allo.com/ressources/testupdate.php?id=11
En vous remerciant par avance
Je bloque sur un problème depuis maintenant 3 jours c'est pourquoi je viens vous demander un petit peu d'aide

Donc pour faire simple, j'essai de monter un script qui me permeterais :
- D'afficher sous forme de tableau les lignes d'une table comportant une valeur particulière d'un champ (ici, ce champ se nomme ID_JB)
- Que dans ce tableau, les valeurs de ces lignes s'affichent sous forme d'INPUT et ce, a l’intérieur d'un formulaire
- Et enfin, apres avoir modifié les valeurs des lignes, envoyer les nouvelle valeurs dans ma base à l'aide d'une requete UPDATE
Bref l'affichage des lignes contenant l'id de l'url fonctionne, mais apres avoir modifié les valeurs, lorsque je clique sur le bouton submit, bah la requête ne s'execute pas correctement, vu qu'il n'arrive pas a me retrouver les valeurs modifié dans les $value['DEVICES'], $value['NAME'] ect.. de la requete.
Donc en gros lorsque je lance la requete avec les valeurs modifiée, il va me remplacer les valeur des champ DEVICES, NAME, LINK, LANG, RATE de l'id $key, par un vide.
Voici mon code :
<?php $cnx = mysql_connect ('xxx', 'xxx', 'xxx');
mysql_select_db ('xxx', $cnx) ;
$id = $_GET['id']; ?>
<html><head><title>Test update de mysql_fetch_array avec foreach</title></head><body>
<form name="edit_existing_tutorials" action="" method="POST"><table>
<?php
//
$req = mysql_query("SELECT * FROM JR_tutorials WHERE id_jb=$id ORDER BY id_tu DESC"); //La requete va chercher toute les lignes ayant pour ID_JB la valeur "ID" située dans l'url ($id = $_GET['id'];)
while ($data = mysql_fetch_array($req)) {
$id_tu=$data['ID_TU']; //On affiche sous forme de tableau, les input text contenant les valeur des lignes
echo '<tr><td><input type="text" name="ligne['.$id_tu.'][\'DEVICES\']" value="'.$data['DEVICES'].'"></td>';
echo '<td><input type="text" name="ligne['.$id_tu.'][\'NAME\']" value="'.$data['NAME'].'"></td>';
echo '<td><input type="text" name="ligne['.$id_tu.'][\'LINK\']" value="'.$data['LINK'].'"></td>';
echo '<td><input type="text" name="ligne['.$id_tu.'][\'LANG\']" value="'.$data['LANG'].'"></td>';
echo '<td><input type="text" name="ligne['.$id_tu.'][\'RATE\']" value="'.$data['RATE'].'"></td></tr>';
}
mysql_free_result ($req);
?>
</table><input type="submit" name="b1"value="Save"></form>
<?php
if(isset($_POST['b1'])){ //Si le bouton submit "b1" est cliqué, on lance la requête foreach
$lignes=$_POST['ligne']; //On recupère les valeurs des lignes modifiée précédemment
foreach($lignes as $key=>$value){ //On definit $lignes en tant que $key (pour l'id) et $value (pour les nouvelle valeurs)
//Puis in update les champs DEVICES,NAME,LINK,LANG,RATE par les nouvelles valeurs
$sql="UPDATE JR_tutorials SET
DEVICES='".mysql_real_escape_string($value['DEVICES'])."',
NAME='".mysql_real_escape_string($value['NAME'])."',
LINK='".mysql_real_escape_string($value['LINK'])."',
LANG='".mysql_real_escape_string($value['LANG'])."',
RATE='".mysql_real_escape_string($value['RATE'])."' WHERE id_tu=$key";
$req = mysql_query($sql, $cnx) or die( mysql_error());
}
if($req) {echo'<br>requete executée';}else{echo'<br>requete non executée';}
}
?>
</body></html>
Et voici mon problème en ligne : http://heavydub.1allo.com/ressources/testupdate.php?id=11
En vous remerciant par avance
