我的项目包含以下文件:
目前正在Xampp上运行。文件内容: index.php
<?php
require_once ("functions/query.php");
$lojrat= lojra();
$decode=json_decode($lojrat, true);
foreach ($decode as $lojra) {
echo $lojra['L_ID'];
}?>
功能/ query.php
function lojra(){
global $mysqli;
$sql="SELECT * FROM `lojrat`";
$result=$mysqli->query($sql);
$json=array();
$num=$result->num_rows;
while ($row=$result->fetch_assoc()) {
$lojrat[] = array(
'L_ID' => $row['L_ID'],
'L_Titulli' => $row['L_Titulli'],
'L_indextitulli' => $row['L_indextitulli'],
'L_fotoindex' => $row['L_fotoindex'],
'L_Embel' => $row['L_Embel'],
'L_cat' => $row['L_cat'],
'L_Played' => $row['L_Played']
);
}
$jsonResults = json_encode($lojrat);
return $jsonResults;
}
functions / index.php
<?php
require_once("query.php");
$lojrat= lojra();
$decode=json_decode($lojrat, true);
foreach ($decode as $lojra) {
echo $lojra['L_ID'];
}
问题是当我在“index.php”上运行时,它返回值为6,5,4,3,2,1当我再次尝试“functions / index.php”中的相同代码时,我得到了结果我想要1,2,3,4,5,6 ......
将sql查询更改为
时出现问题 $sql="SELECT * FROM `lojrat` ORDER BY 'L_ID' DESC";
然后切换回旧的sql.Is这是任何XAMPP错误,因为我没有任何实时主机可以测试?
谢谢!
答案 0 :(得分:0)
如果要转义列名,请使用反引号。如果使用引号,它将作为字符串而不是列引用进行处理。
您也可以使用:
$sql="SELECT * FROM lojrat ORDER BY L_ID DESC";
答案 1 :(得分:0)
将 L_ID 设为 lojra()功能中的键,如:
$lojrat[$row['L_ID']] = array( 'L_ID' => $row['L_ID'], 'L_Titulli' => $row['L_Titulli'], 'L_indextitulli' => $row['L_indextitulli'], 'L_fotoindex' => $row['L_fotoindex'], 'L_Embel' => $row['L_Embel'], 'L_cat' => $row['L_cat'], 'L_Played' => $row['L_Played'] );
并且在index.php文件中都使用如下:
foreach ($decode as $key => $lojra) {
echo $key;
}
这将在两种情况下返回 1 2 3 4 5 6