PHP Codeigniter上传静默失败,没有错误日志,没有错误,没有

时间:2012-09-29 21:58:51

标签: php codeigniter upload

我几乎完全按照CI文档中的说法,做了一些小改动以满足我的需求,但总体来说没有什么重要意义。我尝试上传的文件夹存在,并且777已设置为其权限。

控制器:

    if($this->input->post('uploads'))
    {
        $config['upload_path'] = realpath(APPPATH.'../images');
        $config['allowed_types'] = 'gif|jpg|png';
        $config['max_size'] = 0;
        $config['max_width']  = 0;
        $config['max_height']  = 0;
        $config['remove_spaces'] = true;

        $this->load->library('upload', $config);

        if (!$this->upload->do_upload())
        {
            $data['errors'] = $this->upload->display_errors();
        }
        else
        {
            $data['upload_data'] = $this->upload->data();
        }
    }

观点:

<?php
if(isset($errors))
{
    $this->genfunc->debugArray($errors);
}
if(isset($upload_data))
{
     $this->genfunc->debugArray($upload_data, 'php');
}
?>

<div id="gallery">
    <?php 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 endforeach; else: ?>
        <div id="blank_gallery">Please Upload an Image</div>
    <?php endif; ?>
</div>

<div id="upload">
    <?php
    echo form_open_multipart('upload');
    echo form_upload('userfile');
    echo form_submit('uploads', 'Upload');
    echo form_close();
    ?>      
</div>

视图也被加载,当前所有内容都被发送回同一页面,这是预期的。但是,从Docs中的CI示例中取出并回顾了所有内容,我认为没有理由不这样做。希望有人可以对此有所了解,也许我错过了什么?

3 个答案:

答案 0 :(得分:0)

显然在所有这些futzin周围。我改变了

$ this-&gt; load-&gt; library('upload',$ config);

$这 - &GT;负载&GT;库( '上传'); $这 - &GT; upload-&GT;初始化($ upload_config);

当我在场时,我将$config更改为$upload_config并解决了问题。在第二个参数传递时,不确定是使用$config还是在加载机制中存在缺陷的冲突。无论哪种方式。上传工作现在。

答案 1 :(得分:0)

确保在配置文件中启用调试标志。面临同样的问题,并解决了它。也是在出现错误时应创建错误日志的目录。

答案 2 :(得分:-1)

最初会尝试:

  1. 使用777权限创建根网站目录的上传目录
  2. update $ config ['upload_path'] ='。/ uploads /';