【发布时间】:2013-05-12 01:37:31
【问题描述】:
晚上好..
我正在发布一个表单,其值包括数据库中列的编号(而不是名称),所以我想更新列名称所指的字段,
这是我的代码:
$hours=$_POST['hour'];
$date=$_POST['date'];
$s=$_POST['subject'];
$res=mysql_query("UPDATE study SET [$s] ='$hours' WHERE day='$date' ");
其中 $s 是一个整数,等于所需列的编号。但它不起作用。那么有没有办法通过列的编号而不是名称来引用列?
【问题讨论】:
-
请显示
SHOW CRATE TABLE study返回的内容。 -
所有 SQL 命令都需要列名,而不是数字。
-
ok .. 我想我必须先运行一个查询才能根据其编号获取列名.. 那会是 mysql_field_name 吗?
-
为什么需要按编号引用列。这听起来像是糟糕的设计 - 以及潜在的安全漏洞。