UPDATE ne fonctionne pas !

Résolu/Fermé
Utilisateur anonyme - Modifié par endymionn le 6/05/2011 à 15:32
 Utilisateur anonyme - 6 mai 2011 à 15:37
Bonjour,
Je programme en PHP/MYSQL et je voudrais créer un panel admin/modérateur sur mon site (ce qui est en partie fait mais mon code UPDATE ne fonctionne pas, j'ai pourtant vérifié sur des livres, le Site du Zéro, ...
Voici mon code :

<?php session_start();// On déclare que l'on va utiliser des variables de session ?>  
<?php  
$id = $_GET['id'];  
$login = $_SESSION['login'];// Le login, si la personne est connectée alors la variable contient le login, si il n'est pas connecté, cette variable n'existe pas  
if(isset($_POST['form']))  
{  
$new_message = $_POST['new_message'];  
if (!empty($new_message))  
{  
try  
{  
 // On se connecte à MySQL  
 $bdd = new PDO("mysql:host=localhost;dbname=******", "******", "******");  
}  
catch(Exception $e)  
{  
 // En cas d'erreur, on affiche un message et on arrête tout  
        die('Erreur : '.$e->getMessage());  
}  

$req = $bdd->prepare('UPDATE livre_or SET message = :a WHERE pseudo = :b');  
$req->execute(array(  
 'a' => $new_message,  
 'b' => $login  
 ));  
 $id = $_GET['id'];  
 echo "<script language='Javascript'>  
                  
                document.location.replace('modifier_livre.php?id=$id');  
                  
                </script>";  
}  
else  
{  
echo "<script language='Javascript'>  
                  
            document.location.replace('modifier_livre.php?id=$id');  
                  
</script>";  
}  
}  
?>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >  
   <head>  
       <title>Modifier !</title>  
       <link rel="shortcut icon" href="imagedusite/favicon.ico" />  
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  
    <link rel='stylesheet' media='screen' type='text/css' title='designsite' href='designsite.css' />   </head>  
   </head>  
<?php  
$login = $_SESSION['login'];// Le login, si la personne est connectée alors la variable contient le login, si il n'est pas connecté, cette variable n'existe pas  
   ?>  
   <body>  
   </head>  
   <body>  
   <div id="en_tete">  
   <p>  
   <a href="accueil.php"><img src="imagedusite/banieresite.jpg" alt="Bannière du site" title="La Schroeder Corporation !" /></a>  
   </p>  

</div>  
   
<div id="menu">  
   <div class="element_menu">  
   <?php include("menu.php"); ?>  
   </div>  
</div>  
<div id="corps">  
<?php  
if (isset($_SESSION['login']))  
{  
if(isset($_GET["id"]))  
{  
$id = $_GET['id'];  
try  
{  
// On se connecte à MySQL  
$bdd = new PDO("mysql:host=localhost;dbname"****", "*****", "******");  
}  
catch(Exception $e)  
{  
// En cas d'erreur, on affiche un message et on arrête tout  
die('Erreur : '.$e->getMessage());  
}  
// On vérifie si le message existe bien  
$reponse = $bdd->query("SELECT * FROM livre_or WHERE id='$id'")or die(print_r($bdd->errorInfo()));  
while ($donnees = $reponse->fetch())  
{  
$message = $donnees['message'];  
echo"<h1>Modifier un message du livre d'or !</h1>  
<center>  
<form method='post' action='modifier_livre.php?id=$id'>  
<p>Le message à modifier :<br />  
            <textarea name='new_message'>$message</textarea><br />  
          </p>  
    <input type='submit' value='Changer' /><input type='reset'  value='Recommencer'/>  
        </p>  
    </form></center>  
<center><p><a href='explic_bbcode.php'>Utilisez également le BBcode</a> !</p></center> ";  
}  
}  
else  
{  
echo"<h1>Vous n'avez pas sélectionné de message !</h1>";  
}  
}  
else  
{  
echo"<h1>Vous n'êtes pas membre !</h1>";  
}  
?>  
</div>  
<div id="pied_de_page">  
<?php include("footer.php");?>  
</div>  

      </body>  
     
</html>  







Merci d'avance endymionn.
A voir également:

1 réponse

Utilisateur anonyme
6 mai 2011 à 15:37
Bonjour,

C'est peut-être les accolades manquantes car a et b sont des chaînes non ?

"UPDATE livre_or SET message = ':a' WHERE pseudo = ':b'"
0