我有两个字段...一个是类别名称,另一个是文档标题...当我点击提交时......文档标题应该保存在链接到所选类别名称的文档表中...这是在其他表中。
一个类别可以有n个文档标题......
$result = mysql_query("UPDATE stinky_menu SET description = '$docuTitle', url = '$linkTitle' WHERE title = '$catID'");
如何在WHERE子句中对另一个表执行另一个查询。
答案 0 :(得分:1)
一般来说,我通过让HTML表单中的选择框返回类别ID而不是标题来处理这种情况。这允许我插入或更新记录,而无需对我的参考表进行额外查找(在本例中为您的类别表)。
答案 1 :(得分:1)
使用:命名形式的参数(? - 形式当然也有效),最简单的方法就是在你的UPDATE中使用FROM和JOIN(取决于你没有的一些细节)提供):
UPDATE stinkymenu
SET description = :docuTitle, url = :linkTitle
FROM stinkymenu
JOIN categorytable
ON stinkymenu.catId = categorytable.id
WHERE categorytable.title = :catId
请参阅PDO's docs了解使用此类“预准备语句”的方法,并将其参数绑定到您的变量。