Modification des enregistrements

AMARI -  
MS2I Messages postés 53 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je désire de faire un tableau des données et à chaque fois quand je veux faire une modification de valeur je clique sur le bouton modifier et je modifie le valeur , j'ai essayé avec ce code mais je rentre un nouveau valeur dans le tableau il m'affiche que le modification a été correctement effectué et rien ne change ni dans la bd ni dans le tableau affiché dans la page web , il garde toujours les même valeurs , quelqu'un peut m'aider d'améliorer mon code . Merci d'avance
Code source:

<?php
require_once('dbconnect.php');
?>
<html>
<head>
<title>Liste des Clients</title>
<style type="text/css">
<!--
.Style1 {
color: #0000FF;
font-weight: bold;
}
.Style2 {color: #FFFFFF}
body {
background-color: #FFF;
}
body,td,th {
color: #F00;
}
-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
<body>
<div id="table">
<table id="tab" border="1px" bordercolor="#666666">
<th>Mois</th> <th>Valeur</th><th> Modifiez</th>
<?php

$tab = array();
/* -----------Modification des enregistrements---------------- */

if(isset($_REQUEST['modifier']))

{
$mois=$_REQUEST['mois'];
$mois=$_REQUEST ['année'];

$valeur=$_REQUEST['valeur'];

$requete=("Update mois set mois ='".$mois."' WHERE valeur =".$valeur."");
if($requete)
{
echo("La modification à été correctement effectuée") ;
}
else
{
echo("La modification à échouée") ;
}

$db->query('SELECT * FROM mois');

}


/* -----------Affichage des enregistrements---------------- */

$rep = $db->query('SELECT * FROM mois');

while ( $d = mysqli_fetch_array($rep))
{


?>
<form action=<?php echo $_SERVER['PHP_SELF'];?> method="post">

<?php echo "<tr>";

echo "<td><input type='hidden' name='mois' value=" . $d['mois'] . " />". $d['mois']."</td>";

echo "<td><input type='text' name='valeur' style='width:250px;' value='" . $d['valeur'] . "'/></td>";

echo "<td><input class='mod' type='submit' value='Modifier' name='modifier'/> </td>";

echo"</tr>";
?>
</form>
<?php
}
?>
</table>

</body>
</html>
A voir également:

5 réponses

ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
$requete=("Update mois set mois ='".$mois."' WHERE valeur =".$valeur."");

peut être que ça marchera mieux comme ça :

$requete=$db->query("Update mois set mois ='".$mois."' WHERE valeur =".$valeur."");
0
MS2I Messages postés 53 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai essayé avec votre ligne de code mais ça marche pas c'est le même problème , il m'affiche comme message que la modification est fait mais rien ne se passe :(
0
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
si valeur est alphanumérique :
$requete=$db->query("Update mois set mois ='".$mois."' WHERE valeur ='".$valeur."'");


sinon il faut mettre la requête dans une variable, et l'afficher, puis l'exécuter dans phpmyadmin pour voir le soucis.
0
MS2I Messages postés 53 Date d'inscription   Statut Membre Dernière intervention  
 
d'accord merci , je vais essayer
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MS2I Messages postés 53 Date d'inscription   Statut Membre Dernière intervention  
 
voilà je fais echo de la requête pour voir il va m'afficher quoi
$requete=$db->query("Update mois set mois ='".$mois."' WHERE valeur ='".$valeur."'");
echo $requete ;
du coup quand je clique sur le bouton modifier il modifie rien mais il m'affiche ça :
1 La modification à été correctement effectuée
je sais pas d'ou vient le 1 ???
et j'ai essayé de faire l'update dans la partie qsl de la db juste pour tester il m'affiche
ça comme erreur :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[value-1],'valeur'=[value-2] WHERE 1' at line 1

je sais pas quoi faire :(
0