Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP Codeigniter上传失败,没有错误日志,没有错误,什么都没有_Php_Codeigniter_Upload - Fatal编程技术网

PHP Codeigniter上传失败,没有错误日志,没有错误,什么都没有

PHP Codeigniter上传失败,没有错误日志,没有错误,什么都没有,php,codeigniter,upload,Php,Codeigniter,Upload,我几乎完全按照CI文档中的内容进行了修改,做了一些小改动以满足我的需要,但总体来说没有什么意义。我试图上载到的文件夹已存在,并且已将其权限设置为777 控制员: if($this->input->post('uploads')) { $config['upload_path'] = realpath(APPPATH.'../images'); $config['allowed_types'] = 'gif|jpg|png';

我几乎完全按照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>

请上传一张图片
视图也被加载,当前所有内容都被发送回同一页面,这是预期的。但是,从文档中的CI示例中,再看一遍所有内容,我看不出有什么理由不应该这样做。希望有人能解释一下,也许我遗漏了什么?

一开始会尝试:

  • 使用777权限从根站点目录创建上载目录
  • 更新$config['upload_path']='./uploads/'
    显然,在经历了这一切之后。我变了

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

    $this->load->library('upload'); $this->upload->initialize($upload\u config)


    当时我把
    $config
    改为
    $upload\u config
    ,解决了这个问题。不确定是使用
    $config
    冲突还是传递第二个参数时加载机制有缺陷。不管怎样。现在可以上传了。

    确保在配置文件中启用调试标志。面临着同样的问题,这就解决了。还有在发生错误时应在其中创建错误日志的目录。

    您的控制器和相应功能的名称是什么?控制器名称已上载,并在您的
    索引()中
    function?除了上面的代码之外,还有一条语句可以加载视图,其中数据是第二个变量。因此,您可以在public\u html文件夹上方指定一个目录?建议在与列出初始权限的ci应用程序和系统文件夹相同的目录级别创建上载目录(用于测试)它目前不在应用程序文件夹中。我的图像或上载与应用程序和系统处于同一级别,我将我的资产(如js CSS等)放在同一位置。。向上一级是进入我的服务器用户文件夹,然后再向上一级是root/home/mine/public_html/uploads
    777
    ?不那么,让世界直接访问并允许上传?不,糟糕<代码>775也许……在这台机器上,我将其设置为显示错误、调试等。。我的错误日志没有显示任何内容。我的屏幕也不是这样,因为没有更好的文字,我的屏幕也没有声音。后来我得到了它,虽然不是100%确定问题出在哪里,但我改变了库的加载方式、配置的读取方式,并在我自己的答案中做了一些小改动。解决了这个问题,现在我有了一个新的有趣的问题。参与重命名文件,使用文件名位重命名文件?哪个文件,在哪里?我建议如果找到了这个问题的解决方案,那么在这里回答你自己的问题以帮助他人。为新的查询打开新问题。