没有从我的数据库中获取任何相册

时间:2013-03-10 05:18:17

标签: php mysql

我正在尝试通过关注图片上传网站的某个教程来完成工作任务。我遇到的部分是显示创建的专辑。这是相关的代码(如果我遗漏任何东西,请询问更多)。

function get_albums() {

$albums = array();

$albums_query = mysql_query("
SELECT `albums`.`album_id`, `albums`.`timestamp`, `albums`.`name`,     LEFT(`albums`.`description`, 50) as `description`, COUNT(`images`.`image_id`) as `image_count`
FROM `albums`
LEFT JOIN `images`
ON `albums`.`album_id` = `images`.`album_id`
WHERE `albums`.`user_id` = ".$_SESSION["user_id"]."
GROUP BY `albums`.`album_id`
");


while($albums_row = mysql_fetch_assoc($albums_query))
{
    $albums[] = array(
                      'id' => $albums_row["album_id"],
                      'timestamp' => $albums_row["timestamp"],
                      'name' => $albums_row["name"],
                      'description' => $albums_row["description"],
                      'count' => $albums_row["image_count"]
                      );
}

return $albums;


}
function create_album($album_name, $album_description) {
    $album_name = mysql_real_escape_string(htmlentities($album_name));
    $album_description = mysql_real_escape_string(htmlentities($album_description));

        mysql_query("INSERT INTO `albums` VALUES ('', '".$SESSION["user_id"]."', UNIX_TIMESTAMP(), '$album_name', '$album_description')");
        mkdir('uploads/' .mysql_insert_id(), 0744);
        mkdir('uploads/thumbs/' .mysql_insert_id(), 0744);


}

这就是我认为相关的所有内容以及我认为问题所在的位置。这是专辑应该展示的地方:

<?php
$albums = get_albums();

if (empty($albums)) {
 echo '<p> You don\'t have any albums</p>';
} else {

    foreach ($albums as $album) {
        echo '<p>
        <a href="view_album.php?album_id=', $album['id'], '">', $album['name'], '</a> (', $album['count'], ' images)<br />
        ', $album['description'], '...<br />

        <a href="edit_album.php?album_id=', $album['id'], '">Edit</a> / <a href="delete_album.php?album_id=', $album['id'], '">Delete</a>
        </p>';
    }
}

include 'template/footer.php'

&GT;

但是我总是收到一条消息,说我没有专辑,这让我觉得他总是认为专辑数组是空的。我该怎么做才能纠正这个问题?

1 个答案:

答案 0 :(得分:0)

您使用的是$_SESSION["user_id"],但我没有在您的文件中看到session_start()。可能是您的会话未填充。

另一种可能性是您的用户没有任何相册。

顺便说一句,请将您的脚本迁移到mysqli

  

建议使用mysqli或PDO_MySQL扩展。它   不建议使用旧的mysql扩展进行新开发,   因为它已经从PHP 5.5.0开始被弃用,并将被删除   将来

来自http://www.php.net/manual/en/mysqlinfo.api.choosing.php