未在Codeigniter中拾取图像文件输入

时间:2013-11-28 18:45:40

标签: php codeigniter

我有一个网页表单需要选择图像并上传到文件,但由于某些原因我不知道图像没有被检测到。我可能会遗漏一些东西。图像文件夹是在与应用程序和系统相同的文件夹中创建的。找到下面的代码

查看

<div id="gallery">
    <div id="upload">
        <?php echo $error;?>
        <?php
         echo form_open_multipart('index.php/favoriteMemories/pleasurable');
         echo form_upload('userfile');
         echo form_submit('upload', 'Upload');
         echo form_close();
        ?>
    </div>
</div>

控制器

public function pleasurable() {

    $config = array(

        'upload_path' => '../images/',
        'allowed_types' => 'gif|jpg|png|jpeg',
        'max_size' => '1000000',
        'overwrite' => TRUE,
        'remove_spaces' => TRUE,
        'encrypt_name' => FALSE
    );
   $this->upload->initialize($config);
    if (!$this->upload->do_upload('userfile')) {

        $error = array('error' => $this->upload->display_errors());
        $this->load->view('pleasurable', $error);
    } else {

        $this->upload->do_upload('userfile');

        $this->load->view('pleasurable');
    }
}

2 个答案:

答案 0 :(得分:0)

确保以下内容,

  1. 在您的控制器功能中,您无需使用上传代码两次。

    $这 - &GT; upload-&GT; do_upload( 'userfile的');

  2. 它已经处于if状态,你不需要在其他部分调用它。

    1. 确保您已加载上传库,因为我没有在控制器功能中看到它,您可以在构造函数或自动加载中加载它但请确保。

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

    2. 确保图像文件夹路径正确且可写

    3. 检查您在$ config数组中提供的图像类型和大小。

    4. 如果您看到任何错误消息,请发布以获取更多帮助。一切顺利。

答案 1 :(得分:0)

我已经完成了你的代码。你的代码没有错误。接受上传路径。 如果你把它改成'upload_path' => 'image/', 它会将图像保存在root中的图像文件夹中。只需确保图像文件夹是可写的。您可以打印上传数据并相应地更改文件夹。 使用print_r($this->upload->data()); 检查上传的数据