CodeIgniter中多维数组的未定义索引

时间:2012-03-10 19:35:31

标签: php codeigniter

这可能很容易得到一个解决方案,但我无法让它工作,我一直在尝试我在网上找到的一些不同的方法(阅读SO)。奇怪的是,当我有不同的图像来源时,我的代码工作得很好。

无论如何我的错误:

Message: Undefined index: url
Filename: models/imageloader.php
Line Number: 21

创建数组的代码:

<?php
class imageLoader extends CI_Model {

    var $gallery_path;
    var $gallery_path_url;

    function __construct() {
        parent::__construct();
        $this->gallery_path = realpath(APPPATH . '../public_html/images');
        $this->gallery_path_url = base_url() . 'images/';
    }   

    function get_images() {
            //$this->session->userdata('email')
            $this->db->where('upload_email', $this->session->userdata('email'));
            $query = $this->db->get('uploaded_images');
            $images = array();
            if($query->num_rows > 0) {
                foreach($query->result_array() as $row) {
                    $images[] = array(
                        'url' => $this->gallery_path_url . $row['url'],
                        'thumb_url' => $this->gallery_path_url . 'thumbs/' . $row['url']
                    );
                }
                return $images;
            }
        }
}

最后显示一些图像的视图:

<?php 
    $x=0;
    if(isset($images) && count($images)):
        foreach($images as $image): ?>
            <div class="thumb">
                <a href="<?php echo $image['url']; ?>"><img src="<?php echo $image['thumb_url']; ?>" /></a>
            </div>
            <?php $x++;
            /*if($x == 21)
                break;*/
        endforeach; else: ?>

我的旧代码很糟糕但工作: http://pastie.org/3566053

2 个答案:

答案 0 :(得分:2)

抛出错误的行似乎是引用$ row ['url']的行。如果您的url表中还没有uploaded_images列,那么添加一个列就可以解决您的问题。

答案 1 :(得分:0)

你的回归中缺少一些东西。