PHP - 执行其他查询

时间:2015-03-10 02:39:06

标签: php mysql sql-server database

我花了几个月的时间来掌握PHP和MySQL的基础知识。

我目前正在查询表A并将其作为最终用户直播(即mysite.com/includes/querying.php)。我正在回答表A中的所有不同字段,以显示两个决策按钮旁边;接受和否认。数据是从表单请求生成的,每个请求都是一个新行。我想让控件确定我是否要独立接受或拒绝每个请求(行)。

我的目标是从表A中获取此数据并选择接受或拒绝并将行写入另一个表;表B用于查询其他数据。

例如,每个表中最简单的行可以有两个字段,名称和状态。默认情况下,我将所有新行的状态设置为PENDING。所以我查询Jon Doe和PENDING。 Jane Doe和PENDING。 Joe Doe和PENDING,等等。

从表A中查询新的数据行并选择接受后,接受按钮强制将此信息写入表B,将状态从PENDING切换为Y或N并将其从表A中删除。大部分是很容易完成几个步骤。

此外,我开始通过表单提交将数据写入BOTH表A和表B提交来取得一些进展。然后我只需要在表B中将状态从PENDING更新为Y或N.但是当我尝试使用WHERE时,我只能编写一个覆盖条件来更新下表B中每一行的状态列。关于如何使这个陈述仅针对我选择的行,我一无所知。

$query = "UPDATE table B SET confirmed='Y' WHERE confirmed='PENDING';

所以我想知道是否有一种简单的方法可以通过检查自动增量ID,电子邮件地址等来将字段更新从PENDING基础更改为Y / N,这基本上是针对自身的独特之处吗?

至于我用过的资源学习PHP,MySQL&来自O'Reilly的JavaScript,并通过失败的尝试和措辞完成了许多Google搜索。

1 个答案:

答案 0 :(得分:0)

您可能想要重新考虑数据库设计和谷歌第3版普通表格。您希望避免重复数据。我建议使用1个表并添加一个列,或者添加一个您加入的表。

但要回答您的问题,您可以在查询中使用AND关键字。

UPDATE table B SET confirmed='Y' WHERE confirmed='PENDING' AND firstName = 'Jon' AND lastName = 'Doe';

通过主键进行更新是最好的,因为您可能有多个具有相同名称的人。例如:

UPDATE table B SET confirmed='Y' WHERE id = 1234;