0

我正在尝试执行 SQL UPDATE。

当我尝试更新它时,我收到消息已更新!($action_succeed) 但它不会在数据库中更新...

知道有什么问题吗?

我的代码是...

<form action="title.php" method="post" autocomplete="off">
    Article ID<input type="text" name="edit_article_id" />
    New Title<input type="text" name="edit_article_title" />
    <input type="submit" value="OK" /><br /><br />
</form>

if (isset($_POST['edit_article_id'], $_POST['edit_article_title'])) {
            $id = $_POST['edit_article_id'];
            $title = ($_POST['edit_article_title']);



            if (empty($id) or empty($title)) {
                $error_failed = 'Failed, please fill in all of the fields';
            } else {
                $query = $db->prepare('UPDATE articles (article_title) VALUES (?) WHERE (article_id) VALUES (?)');

                $query->bindValue(1, $title);
                $query->bindValue(2, $id);


                $action_succeed = 'Updated!';
                $query->execute();


            }
        }
4

1 回答 1

1

您之所以看到$action_succeed,是因为您在尝试查询之前进行了设置,无论它是成功还是失败。

失败主要是由于 SQL 语法。

if (isset($_POST['edit_article_id'], $_POST['edit_article_title'])) {
  $id = $_POST['edit_article_id'];
  $title = ($_POST['edit_article_title']);

  if (empty($id) or empty($title)) {
    $error_failed = 'Failed, please fill in all of the fields';
  } else {
    $query = $db->prepare('UPDATE articles set article_title = ? WHERE article_id = ?');

    $query->bindValue(1, $title);
    $query->bindValue(2, $id);

    if ($query->execute())
      $action_succeed = 'Updated!';
    else
      $error_failed = 'Update failed.';
  }
}
于 2013-08-17T01:52:21.143 回答