problème UPDATE SET

Répondre
jeff
le 17/12/2007 à 18:22
jeff
Bonjour,

J'ai un autre problème sur un code PDO, qui sort de mon livre PHP 5 Avancé, c'est un UPDATE SET. (page, 471, pour ceux qui ont ce livre)

Un coup, il bloc mon serveur "WAMP", un autre coup il m'envoi un message d'erreur :

Warning: PDOStatement::execute() [function.PDOStatement-execute]: SQLSTATE[HY093]: Invalid parameter number in H:\www\www.commanderies-net\edit_article_2.php on line 14

Warning: PDOStatement::execute() [function.PDOStatement-execute]: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in H:\www\www.commanderies-net\edit_article_2.php on line 15


<?php
include ('./_require/function_connect.php');

$titre = $_POST['titre'];
$texte = $_POST['texte'];

$id_article = (int) $_POST['id_article'];

$sql = "UPDATE article SET titre=':titre, texte=':texte WHERE id_article = :id_article";
$stmt = $dbh->prepare($sql);

$valeurs = array(':titre'=>$titre, ':texte'=>$texte, ':id_article'=>$id_article);

ligne 14 - $stmt->execute($valeurs);
ligne 15 - $stmt->execute();

$stmt = NULL;
?>


Mon code d'édition et mon formulaire de modifications :

<?php
include ('./_require/function_connect.php');

$id_ar = (int) $_GET['id_article'];

$sql = "SELECT id_article,titre,texte FROM article WHERE id_article =$id_ar ";

$sth = $dbh->query($sql);
$result = $sth->fetchALL();

$row = $result[0];

$titre = $row['titre'];
$texte = $row['texte'];

$jour = substr($date_pud, 8, 2);
$mois = substr($date_pub, 5, 2);
$annee = substr($date_pub, 0, 4);
$date = $jour. '-' .$mois. '-' .$annee;

$dbh = NULL;
?>

<form method="post" action="edit_article_2.php">
<input type="text" name="titre" size="50" value="<?php echo $titre; ?> "/><br />
<textarea name="texte" rows="8" cols="30"><?php echo $texte; ?></textarea><br />
<input type="hidden" name="id_article" value="<?php $id_ar; ?>" />
<input type="submit" value="Modiffier" />
</form>


Merci de votre aide

Jeff
Je suis pour le monde du libre
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours