สอบถามการ query data ให้แสดงค่าล่าสุดอยู่ขวามือครับ
สวัสดีครับขออนุญาตสอบถามการ query data คือผมกำลังทำ chart อยู่ครับ แต่มีปัญหาก็คือข้อมูลล่าสุดต้องแสดงอยู่ทางด้านขวาของ chart
ซึ่งถ้าใช้ Code php ด้านล่างนี้เวลา query ออกมาแล้วค่าล่าสุดจะอยู่ทางซ้าย ซึ่งผมต้องการให้ค่าล่าสุดอยู่ทางด้านขวาครับ
Code (PHP)
<?php
include("dbcon.php");
$sql = "select * from data_sensor where
(time_list like '%:00:%')
or
(time_list like '%:30:%')
ORDER BY id DESC LIMIT 7";
$query = mysqli_query($conn,$sql);
?>
<?php
while($result=mysqli_fetch_array($query,MYSQLI_ASSOC))
{
?>
<?php echo $result["id"];?>,
<?php
}
?>
<?php
mysqli_close($conn);
?>
output จะได้แบบนี้ครับ
64441, 64440, 64439, 64438, 64335, 64334, 64231,
แต่ที่ผมต้องการคือให้แสดงแบบนี้ครับ
64231, 64334, 64335, 64438, 64439, 64440, 64441,
รบกวนพี่ๆช่วยแนะนำทีครับว่าต้องแก้ไขยังไงครับ
ขอบพระคุณครับTag : PHP, MySQL
ประวัติการแก้ไข 2019-01-31 17:06:07
Date :
2019-01-31 10:57:14
By :
damnern007
View :
778
Reply :
5
DESC เปลี่ยนเป็น ASC
ลองดูหรือยังครับ
Date :
2019-02-01 14:17:38
By :
nobetaking
ASC มันเป็นการแสดงค่า row แรกครับแต่ผม row หมื่นกว่าแล้วครับ ผมต้องการแค่ 7 row ล่าสุดครับ แต่ต้องการให้ค่าล่าสุดของ row เวลา query เป็น array แล้วอยู่ทางขวามืออ่าครับ ซึ่งตอนนี้ค่าล่าสุดอยู่ซ้ายมือครับ
Date :
2019-02-02 09:30:58
By :
damnern007
Code (PHP)
// เพิ่ม
$result = array_reverse(mysqli_fetch_array($query,MYSQLI_ASSOC), true);
while($result) {
// echo
}
Date :
2019-02-02 10:48:26
By :
mr.v
Code (PHP)
<?php
include("dbcon.php");
$sql = "select * from data_sensor where
(time_list like '%:00:%')
or
(time_list like '%:30:%')
ORDER BY id DESC LIMIT 7";
$query = mysqli_query($conn,$sql);
?>
<?php
$result = array_reverse(mysqli_fetch_array($query,MYSQLI_ASSOC), true);
while($result) {
?>
<?php echo $result["id"];?>,
<?php
}
?>
<?php
mysqli_close($conn);
?>
ผมลองแก้ตามที่คุณ mr.v แล้ว output ออกแบบนี้ครับ
Date :
2019-02-04 14:07:08
By :
damnern007
ทำแบบง่ายๆ ไม่ต้องคิดมาก
fetch record เก็บไว้ใน array ก่อน แล้วค่อย อ่านย้อนจากท้ายมาต้น เพื่อแสดงผล
Code (PHP)
$temp=[];
while($ro = $rs->fetch_object()){ $temp[]=$ro; }
for($i=count($temp); $i>0; $i--){
print_r($temp[$i-1]);
}
ประวัติการแก้ไข 2019-02-04 14:35:35
Date :
2019-02-04 14:35:05
By :
Chaidhanan
Load balance : Server 01