09/10/2018, 23:40
Vbb không nhận kiểu query này
Tôi muốn tạo thêm module newalbum từ Xtream ra Vbb , tôi đã tạo thêm một file mới trong module của vbb với nội dung sau :
<?php
$result
= $db->query_read("SELECT album_id, album_name, album_singer,
album_img FROM media_album ORDER BY album_id DESC LIMIT 10");
while ($album = $db->fetch_array($result))
{
$albumid = $album['album_id'];
$albumname = $album['album_name'];
$singer = $album['album_singer'];
$albumimage = $album[album_img];
if($albumimage==""){$albumimage="music/noimage.jpg";}
}
eval('$home["$mods[modid]"]['content'] = "' . fetch_template('adv_portal_newalbum') . '";');
?>
Nhưng query kiểu này thì nó lại ra mỗi album ở thứ tự 10 , nếu thay "10" = "9" thì nó lại ra mỗi album ở thứ tự 9 , sao nó lại không ra luôn 10 hay 9 album . Tôi đã hỏi nhiều người và ai cũng nói kiểu query đó đúng , vậy tại sao vbb lại không nhận ?
<?php
$result
= $db->query_read("SELECT album_id, album_name, album_singer,
album_img FROM media_album ORDER BY album_id DESC LIMIT 10");
while ($album = $db->fetch_array($result))
{
$albumid = $album['album_id'];
$albumname = $album['album_name'];
$singer = $album['album_singer'];
$albumimage = $album[album_img];
if($albumimage==""){$albumimage="music/noimage.jpg";}
}
eval('$home["$mods[modid]"]['content'] = "' . fetch_template('adv_portal_newalbum') . '";');
?>
Nhưng query kiểu này thì nó lại ra mỗi album ở thứ tự 10 , nếu thay "10" = "9" thì nó lại ra mỗi album ở thứ tự 9 , sao nó lại không ra luôn 10 hay 9 album . Tôi đã hỏi nhiều người và ai cũng nói kiểu query đó đúng , vậy tại sao vbb lại không nhận ?
Bài liên quan
album_img FROM media_album ORDER BY album_id DESC LIMIT 10"
Bạn thử viết lại như thế này coi:
album_img FROM media_album ORDER BY album_id DESC LIMIT 0, 10"
while ($album = $db->fetch_array($result))
{
$albumid = $album['album_id'];
$albumname = $album['album_name'];
$singer = $album['album_singer'];
$albumimage = $album[album_img];
if($albumimage==""){$albumimage="music/noimage.jpg";}
}
với vòng lặp này, nó sẽ có kết quả là mẫu tin thứ 9 như bạn gặp, tại sao??? bởi vì bạn nhìn các biến albumid, albumname, ... nó sẽ chứa giá trị đầu tiên ở đâu??? bạn thử chạy bằng tay là sẽ hiểu tại sao nó bị như vậy liền, và cách giải quyết ở đâu là gán nó vào một mảng nào đó để lưu giá trị sau khi vòng lặp này kết thúc, chẳng hạn như sau:
while ($album = $db->fetch_array($result))
{
$array_song []['id'] = $album['album_id'];
$array_song []['albumname'] = $album['albumname'];
$array_song []['singer'] = $album['singer'];
$array_song []['albumimage'] = $album['albumimage']=='' ? 'music/noimage.jpg' : $album['albumimage'];
}