我是PHP的新手,所以请不要破坏我的排骨。
我正在构建知识库系统,基本的CRUD功能。我被困在需要为表中每列的所有值NULL的地方。
这基本上是"编辑KB"形成。我有一个复选框数组,在编辑时我要清除表格中我的类别列中的KB编号' category_kb_members'。
除了这一点,我的代码工作正常。
这是我目前的代码:
//Clear all categories for this KB
while($catrow = mysqli_fetch_array($categorylist)){
$catname = "";
$catname = $catrow['name'];
mysqli_query ($dbc, "UPDATE category_kb_members SET $catname=NULL WHERE $catname ='$kbid';");
}
[请注意,这里不需要对SQL注入进行注释,因为数据库中的源是干净的。]
" $所属分类"是一个类别名称数组 - 我正在更新的表格中有每个类别的列。
" $ kbid"是从URL中的$ _GET设置的,与要删除的KB编号相对应,并且有效且有效。
我的循环是查询并将每个列更新为NULL,如果它存在于列中。代码稍后将继续添加到相关列中。
我已经针对MYSQL运行了这个查询,它在SQL端工作正常。
有关UPDATE无法正常工作的任何想法?
答案 0 :(得分:0)
感谢您的所有评论。所有帮助过的人都有学分。
我复制了我的$ catname
查询$categorylist = mysqli_query($dbc,"SELECT name FROM categories");
这是代码的进一步发展。虽然这个变量已经设置好,并且在上面的代码中工作,但它必须在我的代码中的某处清除。如果我在循环上面重新运行这部分它可以正常工作。我将不得不弄清楚上面的变量是什么。
感谢所有人和“阿卜杜拉”让我第三次思考。