有人能告诉我为什么这个更新查询没有更新我的数据库中的字段吗?我的php页面中包含以下内容,用于从数据库检索当前值:

<?php

  $query = mysql_query ("SELECT * FROM blogEntry WHERE username = 'bobjones' ORDER BY id DESC");

  while ($row = mysql_fetch_array ($query)) 
  {
      $id = $row['id']; 
      $username = $row['username'];
      $title = $row['title'];
      $date = $row['date'];
      $category = $row['category'];
      $content = $row['content'];


    ?>

这里是我的HTML表单:

<form method="post" action="editblogscript.php">
ID: <input type="text" name="id" value="<?php echo $id; ?>" /><br />
Username: <input type="text" name="username" value="<?php echo $_SESSION['username']; ?>" /><br />
Title: <input type="text" name="udtitle" value="<?php echo $title; ?>"/><br />
Date: <input type="text" name="date" value="<?php echo $date; ?>"/><br />
Message: <textarea name = "udcontent" cols="45" rows="5"><?php echo $content; ?></textarea><br />
<input type= "submit" name = "edit" value="Edit!">
</form>

这是我的"编辑博客脚本":

<?php

mysql_connect ("localhost", "root", "");
mysql_select_db("blogass");

if (isset($_POST['edit'])) {

    $id = $_POST['id'];
    $udtitle = $_POST['udtitle'];
    $udcontent = $_POST['udcontent'];


    mysql_query("UPDATE blogEntry SET content = $udcontent, title = $udtitle WHERE id = $id");
}

header( 'Location: index.php' ) ;





?>

我不明白为什么它不起作用.

推荐答案

查询中的任何VARCHAR内容都必须用单引号引起来.因此,您的更新查询应该是:

mysql_query("UPDATE blogEntry SET content = '$udcontent', title = '$udtitle' WHERE id = $id");

此外,直接使用帖子中的内容更新您的数据库也不是一种好的形式.您应该使用MYSQL_REAL_EASH_STRING函数清理传入数据.

Database相关问答推荐

删除Postgres中的JSONB列并在不停机的情况下回收空间

如何正确创建mongo模型和客户端?

第一次请求后数据库连接关闭

在哪里存储 PHP 应用程序的数据库登录凭据

什么是 CREATE VIEW IF NOT EXISTS in postgresql

是否有一个简单的工具可以将 mysql 转换为 postgresql 语法?

数据库设计 - 类别(categories)和子类别(sub-categories)

更新数据库后如何更新redis?

如何使用 SELECT WHERE IN() 保持订单?

按纬度/经度进行半径搜索

保存图像:文件还是 blob?

被删除的行占用的空间会被重新使用吗?

我如何知道何时索引列以及使用什么索引?

在 MySQL 中 Select 浮点数

什么是非关系数据库的例子?

有哪些不同类型的索引,每种索引的好处是什么?

如何使用反射调用扫描可变参数函数

sqlite 表中的最大行数

为什么实体框架连接需要元数据属性?

使用 oracle sql developer 从一个数据库复制到另一个数据库 - 连接失败