获取上传的ID并传递给控制器​​,codeigniter

时间:2012-01-22 22:45:47

标签: php codeigniter

有谁知道如何从我的控制器获取刚刚上传的图片ID并访问它们的数组?

我的模特:http://pastebin.com/aJW0vq22(do_upload())

这是我的控制器的相关部分: class Site扩展了CI_Controller {

function index() {
    //enable profiler
    //$this->output->enable_profiler(TRUE);

    $data = array();
    $this->load->model('Site_model');

    if($this->input->post('upload')) {

        $data['upload'] = $this->Site_model->do_upload();
        //echo '<hr />' . $this->Site_model->total_uploads;
        //set the users edit session for their image
        $uploaded_image_id = $this->Site_model->get_last();

        $values = array(
        'image_id' => $uploaded_image_id,
        'session_id' => $this->session->set_userdata('session_id')
        );
        $this->session->set_userdata('edit', $values);
        //var_dump($values);

        //show uploaded image
        redirect($uploaded_image_id . '?links');

    } 

目前我刚刚使用'get_last()'来获取添加到数据库中的最后一件事,但现在我已经添加了一次上传多个内容的功能我怀疑我还能想到吗?< / p>

编辑:

基本上我想要得到的最终结果是

        redirect('id1, id2, id3' . '?links');

1 个答案:

答案 0 :(得分:0)

您可以将刚刚上传的图像的文件名保存到会话数组中,然后在数据库中查询这些文件名的ID。这将可靠地返回desierd id。

我看到你的get_last使用了一个查询,它返回添加到表中的最后一个图像。但是,如果您有500个用户同时上传图片怎么办?