[PHP] Pas de modification dans ma base

Bonjour,
c'est ma page de modification mais la modification au niveau de la base de donnée ne se fait pas correctement et il y a quelque part une erreur que je ne le vois pas. quelqu'un peux m'aider...

<?php

if (isset($_POST['go']) && $_POST['go']=='Modifier le livre')
{
require('connect.php');

if (!isset($_POST['siecle'])|| !isset($_POST['cote']) || !isset($_POST['auteur'])|| !isset($_POST['titre'])|| !isset($_POST['critique'])|| !isset($_POST['maison_edition'])|| !isset($_POST['lieu_edition'])|| !isset($_POST['collection'])|| !isset($_POST['annee_edition'])|| !isset($_POST['nb_pages'])|| !isset($_POST['mots_cles'])) {
$erreur = 'Les variables nécessaires au script ne sont pas définies.';
}
else {
if (empty($_POST['siecle']) || empty($_POST['titre']) || empty($_POST['nb_pages'])) {
$erreur = 'Au moins un des champs est vide.';
}
else {
$sql = 'UPDATE livres SET siecle="'.$_POST['siecle'].'", genre="'.$_POST['genre'].'", cote="'.$_POST['cote'].'", auteur="'.$_POST['auteur'].'", titre="'.$_POST['titre'].'", critique="'.$_POST['critique'].'", maison_edition="'.$_POST['maison_edition'].'", lieu_edition="'.$_POST['lieu_edition'].'", collection="'.$_POST['collection'].'", annee_edition="'.$_POST['annee_edition'].'", nb_pages="'.$_POST['nb_pages'].'", mots_cles="'.$_POST['mots_cles'].'" WHERE id="'.$_GET['id_livre_a_modif'].'"';

mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

mysql_close();

header('Location:liste_livres.php');
exit();
}
}
}
?>

<html>
<head>
<title>Modifier un livre</title>

<?php

require 'connect.php';
$result = mysql_query ('SELECT * from livres WHERE id="'.$_GET['id_livre_a_modif'].'"');
while ($data = mysql_fetch_array ($result))
{ ?>

<form action="modif_livre.php" method="post">
<table>
<tr>
<td class="gras">Siécle* : </td>
<td><select name="siecle" >
<option ><?php echo($data['siecle']); ?></option>
<option ></option>
<option value="Moyen Age" >M. Age</option>
<option value="XVI">XVI</option>
<option value="XVII">XVII</option>
<option value="XVIII">XVIII</option>
<option value="XIX">XIX</option>
<option value="XX">XX</option>
</select></td>
</tr>
<tr>
<td class="gras">Genre : </td>
<td><select name="genre" id="list_G" disabled>
<option><?php echo($data['genre']); ?></option>
<option ></option>
<option>ÉPOPEE</option>
<option>ROMAN</option>
<option>CHRONIQUES</option>
<option>CONTES</option>
<option>FABLIAUX</option>
<option>POESIE</option>
<option>THEATRE</option>
<option>DIVERS</option>
<option>CRITIQUES LITTERAIRES</option>
<option>CRITIQUES GENERALES</option>
<option>ANCIEN FRANCAIS</option>
</select>
</td>
</tr>
<tr>
<td class="gras">Cote :</td>
<td><input type="text" name="cote" maxlength="50" size="50" value="<?php echo($data['cote']); ?>"></td>
</tr>
<tr>
<td class="gras">Auteur :</td>
<td><input type="text" name="auteur" maxlength="50" size="50" value="<?php echo($data['auteur']); ?>"></td>
</tr>
<tr>
<td class="gras">Titre* :</td>
<td><textarea name="titre" cols="38" rows="4"><?php echo($data['titre']); ?></textarea></td>
</tr>
<tr>
<td class="gras">Critique :</td>
<td><input type="text" name="critique" maxlength="50" size="50" value="<?php echo($data['critique']); ?>"></td>
</tr>
<tr>
<td class="gras">Maison d’édition : </td>
<td><input type="text" name="maison_edition" maxlength="50" size="50" value="<?php echo($data['maison_edition']); ?>"></td>
</tr>
<tr>
<td class="gras">Lieu d’édition :</td>
<td><input type="text" name="lieu_edition" maxlength="50" size="50" value="<?php echo($data['lieu_edition']); ?>"></td>
</tr>
<tr>
<td class="gras">Collection :</td>
<td><input type="text" name="collection" maxlength="50" size="50" value="<?php echo($data['collection']); ?>"></td>
</tr>
<tr>
<td class="gras">Année d’édition :</td>
<td><input type="text" name="annee_edition" maxlength="4" size="50" value="<?php echo($data['annee_edition']); ?>" ></td>
</tr>
<tr>
<td class="gras">Nombre de pages* : </td>
<td><input type="text" name="nb_pages" maxlength="8" size="50" value="<?php echo($data['nb_pages']); ?>" ></td>
</tr>
<tr>
<td class="gras">Mots Clés :</td>
<td><textarea name="mots_cles" cols="38" rows="4"><?php echo($data['mots_cles']); ?></textarea></td>
</tr>
<tr>
<td>
<td align="right"><br><input type="submit" name="go" value="Modifier le livre"></td>
</tr>
</table>
</form>
<?php

}
if (isset($erreur)) echo '<br /><br />',$erreur;
?>

</body>
</html>

Dans une autre page j'ai la liste de mes livres avec un lien de modification qui me présente les données correcte de l'enregistrement voulu(page présenté); mais au moment où je termine la modification et je clique sur le bouton "modifier le livre" la modification au niveau de ma base ne se réalise pas...
Configuration: Windows XP
Internet Explorer 7.0

3 réponses

  1. merci pour vos réponses mais j'ai essayé le code et ca n'a pas marché
    1. Contributeur
      tu as essayé le code que j'ai mis dans mon précedent message???
      1. Contributeur
        salut
        essai ça:

        <?php

        if (isset($_POST['go']) && $_POST['go']=='Modifier le livre')
        {
        require('connect.php');

        if (!isset($_POST['siecle'])|| !isset($_POST['cote']) || !isset($_POST['auteur'])|| !isset($_POST['titre'])|| !isset($_POST['critique'])|| !isset($_POST['maison_edition'])|| !isset($_POST['lieu_edition'])|| !isset($_POST['collection'])|| !isset($_POST['annee_edition'])|| !isset($_POST['nb_pages'])|| !isset($_POST['mots_cles'])) {
        $erreur = 'Les variables nécessaires au script ne sont pas définies.';
        }
        else if (empty($_POST['siecle']) || empty($_POST['titre']) || empty($_POST['nb_pages'])) {
        $erreur = 'Au moins un des champs est vide.';
        }
        else {
        $sql = 'UPDATE livres SET siecle="'.$_POST['siecle'].'", genre="'.$_POST['genre'].'", cote="'.$_POST['cote'].'", auteur="'.$_POST['auteur'].'", titre="'.$_POST['titre'].'", critique="'.$_POST['critique'].'", maison_edition="'.$_POST['maison_edition'].'", lieu_edition="'.$_POST['lieu_edition'].'", collection="'.$_POST['collection'].'", annee_edition="'.$_POST['annee_edition'].'", nb_pages="'.$_POST['nb_pages'].'", mots_cles="'.$_POST['mots_cles'].'" WHERE id="'.$_GET['id_livre_a_modif'].'"';

        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

        mysql_close();

        header('Location:liste_livres.php');
        exit();

        }
        }
        ?>
        1. la requête de modification ne se lance pas et bien sûr pas de modification dans ma base.