我对Codeigniter有点陌生,我正在尝试运行这个简单的查询:

DESCRIBE `table_name`;

我尝试了:

$sql = 'DESCRIBE ?';
$desc = $this->db->query($sql, $table)->result();

创建此查询:

DESCRIBE 'table_name';

如您所见,当我绑定$表变量时,错误的报价正在输出;它们是价值报价('),而不是表报价(`)。我做错了吗?

谢谢你!

有帮助吗?

解决方案

CodeIgniter的查询绑定将为您逃脱。它假设数据是一个值,而不是表名。

你你必须自己逃脱价值。

$table = $this->db->escape_str($table);
$sql = "DESCRIBE `$table`";
$desc = $this->db->query($sql)->result();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top