donglan8870 2011-10-15 16:17
浏览 82
已采纳

mysql语句不起作用

I have this code

if(!isset($_GET['album_id'])) { die("Album Not Found!"); } else { $album_id = mysql_real_escape_string($_GET['album_id']); }

$sql = "SELECT * FROM `audio_albums` WHERE `album_id` = ".$album_id."";
$qry = mysql_query($sql);
$num = mysql_num_rows($qry);

if($num ==  1) {
    // Fetch Array
    $arr = mysql_fetch_array($qry);
    // Assign Values
    $album_name     = $arr['album_name'];
    $album_name_seo = $arr['album_name_seo'];
    $album_id       = $arr['album_id'];
    // Fetch Songs
    $sql2 = "SELECT audio_id,album_id,title FROM `audios` WHERE `album_id` = ".$album_id." AND `public_private` = 'public' AND `approved` = 'yes' LIMIT 0, 30 ";
    $qry2 = mysql_query($sql2);
    $arr2 = mysql_fetch_array($qry2);
    print_r($arr2);
} else {
    echo "Album Not Found!";
} 

and when i execute the code, it results in this

Array
(
    [0] => qCpPdBZIpkXfVIg4iUle.mp3
    [audio_id] => qCpPdBZIpkXfVIg4iUle.mp3
    [1] => 1
    [album_id] => 1
    [2] => Ambitionz Az a Ridah
    [title] => Ambitionz Az a Ridah
)

Actually it fetches data of only one row but there are several rows in result. Whats wrong in the code? why isn't it working?

  • 写回答

2条回答 默认 最新

  • dt3358 2011-10-15 16:22
    关注

    Well, mysql_fetch_array fetches one row. You just need to do a loop to fetch all of them, as the manual shows: http://php.net/mysql_fetch_array

    while ($arr2 = mysql_fetch_array($qry2)) {
        print_r($arr2);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应