【发布时间】:2016-11-15 23:03:27
【问题描述】:
$sql = "SELECT table_name FROM information_schema.tables WHERE table_type = 'base table' AND table_schema='PPcontent';";
$query = mysqli_query($con, $sql);
while($result = mysqli_fetch_array($query)){
echo "<option value=\"", $result[0], "\">", $result[0], "</option>";}
我正在尝试了解 mysqli 对象及其工作方式。我有上面的查询,我用它来查找数据库的表名并将它们插入到选择下拉列表中。当我使用类似的代码填充另一个选择下拉列表时,我使用$result['some_row_name'] 在 while 循环运行时获取结果。然后我的 select 语句是 SELECT 'some_row_name from 'some_table' 当我使用上面的 select 语句执行此操作时,我需要使用索引 0 而不是“Table_name”。这是为什么?当我在 PHP MyAdmin 中运行上面的 select 语句时,我得到了一个行名为“Table_name”的表,所以我想我会用它作为索引而不是 0。
【问题讨论】:
-
请注意,在您的投影中,您有
table_name,因此在结果数组中,您将得到的是table_name,而不是您所期望的Table_name。 -
谢谢,我会查看并检查大小写。是不是因为您正在投影一个新表并使用查询“从 information_schema 中选择 table_name ......”来创建行名,所以本质上我可以根据需要将 table_name 设为“foo”或“bar”?
-
我不记得我是这样做的还是我改变了它。我知道我得到它来做我想做的事。感谢您的帮助!
-
很高兴我能帮上忙