【问题标题】:Update database using mySQL & php PDO使用 mySQL & php PDO 更新数据库
【发布时间】:2012-12-09 22:41:03
【问题描述】:

我为我的一个课程创建了一个数据库,用于模拟酒店预订表格。
我试图从中获取值的数据库表名是 tblNameRes,字段是 fldName 和 pkEmail 我已经从数据库中获取了值并在此表中显示它们: http://www.uvm.edu/~cchessia/cs148/assign4/strugg.php

我想添加一列来更新和删除这些记录,但我不太明白怎么做。我有这个代码:

$updating = $db->prepare('UPDATE `tblNameRes` SET `name` = `name` + ? WHERE `id` = ?');
$updating->execute(array(20, $id));

但我希望能够单击一个显示“更新”的链接,它会将我带到另一个页面,该页面允许我编辑数据并将其提交回数据库。我也希望能够以同样的方式删除数据。

【问题讨论】:

  • 你从 PHP 而不是 NodeJS 开始有什么原因吗?
  • 是的,我的课主要是 php 和 mySQL
  • 耻辱。 NodeJS 是未来。我建议在页面中渲染数组的内容,然后将.只是把它发回来

标签: mysql pdo


【解决方案1】:

我对您想要什么有点困惑,您希望 PDO 代码同时更新和删除数据库中的项目吗?如果是这样,我使用它,我也是 PDO 的新手。也尽量不要在表/字段名称周围使用 '。

/** Code to update */

$query = "UPDATE tblNameRes SET name ='$name' WHERE id = :id";
$stmt = $db->prepare($query);
$stmt->BindValue(':id', $id, PDO::PARAM_INT);
$stmt->execute();

/** Code to delete */

$query = "DELETE FROM tblNameRes WHERE id = :id";
$stmt = $db->prepare($query);
$stmt->BindValue(':id', $id, PDO::PARAM_INT);
$query->execute();

让我知道这是否有帮助,或者不是您想要的。我是新来的,所以我不能发布“cmets”。

【讨论】:

  • 为什么几乎在每个示例中都植入 SQL 注入?
【解决方案2】:

/* 更新代码并删除这个'开头和结尾*/

$query = "UPDATE tblNameRes SET name =:fname WHERE id = :id"; $stmt = $db->prepare($query); $stmt->BindValue('fname',$fname); $stmt->execute();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-12
    • 2013-09-28
    • 2013-06-17
    • 2014-01-04
    • 2014-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多