Php 使用mysqli_fetch_assoc()从查询中填充数组
我有这个,一切都很好(我有一个通用的表生成器,但现在我不得不偏离它): 现在我有了类似的东西:Php 使用mysqli_fetch_assoc()从查询中填充数组,php,html,mysql,sql,Php,Html,Mysql,Sql,我有这个,一切都很好(我有一个通用的表生成器,但现在我不得不偏离它): 现在我有了类似的东西: $result = mysqli_query($con, 'SELECT r.id AS ID, CONCAT(g.fname, g.lname) AS Name, r.apple AS Apple, r.dog AS Dog, DATEDIFF(r.Dog, r.Apple) AS Days,
$result = mysqli_query($con, 'SELECT r.id AS ID, CONCAT(g.fname, g.lname) AS Name, r.apple AS Apple,
r.dog AS Dog, DATEDIFF(r.Dog, r.Apple) AS Days,
r.total_price AS "Total Price", u.name AS Name, r.in AS "In",
r.out AS "Out", r.time_in AS "Time In", r.time_out AS "Time Out",
CONCAT(c.fname,c.lname) AS Charlie, r.here AS "Apple",
r.leave AS "Dog"
FROM really r, georgia g, unit u, charlie c
WHERE g.id = r.georgia AND r.unit = u.id AND r.charlie = c.id
HAVING r.in = TRUE AND r.out = FALSE');
//fill fields array with fields from table in database
while ($x = mysqli_fetch_assoc($result))
{
$fields[] = $x['Field'];
}
我现在得到一个行
$fields[]=$x['Field']的错误代码>由于单词字段
。为什么?因为我现在有一个完整的查询?如何在不引用每个字段名的情况下修复此问题?因为在查询结果中没有名为字段的字段:
'SELECT r.id AS ID, CONCAT(g.fname, g.lname) AS Name, r.apple AS Apple,
r.dog AS Dog, DATEDIFF(r.Dog, r.Apple) AS Days,
r.total_price AS "Total Price", u.name AS Name, r.in AS "In",
r.out AS "Out", r.time_in AS "Time In", r.time_out AS "Time Out",
CONCAT(c.fname,c.lname) AS Charlie, r.here AS "Apple",
r.leave AS "Dog"
FROM really r, georgia g, unit u, charlie c
WHERE g.id = r.georgia AND r.unit = u.id AND r.charlie = c.id
HAVING r.in = TRUE AND r.out = FALSE'
查询结果中有一些字段:ID
、Name
、Apple
,等等。。您可以尝试按如下方式获取这些字段,或更改查询命令
while ($x = mysqli_fetch_assoc($result))
{
$fields[] = $x['ID'];
}
为什么不使用mysqli_fetch_数组
?
while ($x = mysqli_fetch_assoc($result))
{
$fields[] = $x['ID'];
}