【问题标题】:Upload Image Using Path Codeigniter使用路径 Codeigniter 上传图片
【发布时间】:2020-03-21 10:24:33
【问题描述】:

我在使用 codeigniter 上传文件时遇到问题。当我创建休假请求并上传图像时,图像没有出现在文件夹路径中,并且在数据库中也没有路径。实际上,我正在做休假请求管理,我已经在我的控制器中插入了编码上传。这是我的控制器 leaves.php

控制器(leaves.php)

   public function upload ()

   {

            $config['upload_path']          = "./upload/";
            $config['allowed_types']        = 'gif|jpg|png|jpeg';
            //$config['max_size']             = 100;
            //$config['max_width']            = 1024;
            //$config['max_height']           = 768;

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

            if ( ! $this->upload->do_upload())
            {
                    $error = array('error' => $this->upload->display_errors());

                    $this->load->view('create', $error);
            }
            else
            {
                    $file_data = $this->upload->data();
                    $data['img'] = base_url().'/uploads/'.$file_data['file_name'];
                    $this->load->view('view', $data);
            }

这是我的看法。实际上我有 2 个视图,分别称为 create.php 和 view.php。 Create.php 是请求离开,也用于上传文件,view.php 是用户想要查看的时间他们的请假请求以及上传图片。这是我的两种视图的代码。

查看(create.php)

<? echo form_open_multipart('create/upload');?>
<input type="file" name="image" class=" inputfile" value="<?php echo set_value ('image'); ?>" />

查看(view.php)

<label for="image"><?php echo lang ('leaves_view_field_image'); ?>Uploaded File</label>
<img src="?php echo $leave['image']"><?php echo $leave['image']; ?>

当我上传带有请假请求的图片时,上传的图片只获取名称文件而不是数据库中的整个文件。有人可以帮我吗?

【问题讨论】:

    标签: codeigniter file-upload


    【解决方案1】:
     public function upload ()
           {
                    $config['upload_path']          = "./upload/";
                    $config['allowed_types']        = 'gif|jpg|png|jpeg';
                    //$config['max_size']             = 100;
                    //$config['max_width']            = 1024;
                    //$config['max_height']           = 768;
    
                    $this->load->library('upload', $config);
    
                    if ( ! $this->upload->do_upload('image'))
                    {
                            $error = array('error' => $this->upload->display_errors());
    
                            $this->load->view('create', $error);
                    }
                    else
                    {
                            $file_data = $this->upload->data();
                            $data['img'] = base_url().'/uploads/'.$file_data['file_name'];
                            $this->load->view('view', $data);
                    }
        }
    

    注意:确保在linux系统中给文件夹读/写权限

    【讨论】:

      【解决方案2】:

      这里是错误if ( ! $this-&gt;upload-&gt;do_upload()) 将其更改为if ( ! $this-&gt;upload-&gt;do_upload('image')),其中“image”与“$_FILES['image']”相同,即 html 中的值,例如&lt;input type="file" name="image"&gt;。 我希望这会帮助你上传你的文件。

      【讨论】:

        猜你喜欢
        • 2011-12-28
        • 1970-01-01
        • 2021-01-30
        • 1970-01-01
        • 2012-01-22
        • 1970-01-01
        • 1970-01-01
        • 2020-06-12
        • 2020-12-31
        相关资源
        最近更新 更多