简体   繁体   English

使用CodeIgniter上载文件

[英]Uploading a file with CodeIgniter

I want to upload an image with CodeIgniter. 我想使用CodeIgniter上传图片。 I followed the tutorial in the documentation, but it's not working. 我按照文档中的教程进行操作,但是无法正常工作。 Does anyone know the solution? 有人知道解决方案吗?

How do I have to send the image to the database? 如何将图像发送到数据库?

View in Views/mod/mod.php 在Views / mod / mod.php中查看

<form action="" method="post">
    <?php if(isset($error)): ?>
        <?php echo $error ?>
    <?php endif; ?>

    <?php echo form_open_multipart('upload/do_upload');?>

    <label for="image">Afbeelding</label>
    <input type="file" id="image" name="image" />

    <input type="submit" value="upload" />

</form>

Upload succes in Views/mod/upload_succes.php 在Views / mod / upload_succes.php中上传成功

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Upload succes</title>
</head>
<body>

<h3>Your file was successfully uploaded!</h3>

<ul>
    <?php foreach ($upload_data as $item => $value):?>
        <li><?php echo $item;?>: <?php echo $value;?></li>
    <?php endforeach; ?>
</ul>

<p><?php echo anchor('upload', 'Upload Another File!'); ?></p>


</body>
</html>

Upload.php in controllers/upload.php 控制器/upload.php中的Upload.php

<?php

class Upload extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
        $this->load->helper(array('form', 'url'));
    }

    public function index()
    {
        $this->load->view('mod/mod', array('error' => ' ' ));
    }

    public function do_upload()
    {
        $config['upload_path']          = './uploads/';
        $config['allowed_types']        = 'jpg|png';
        $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('mod/mod', $error);
        }
        else
        {
            $data = array('upload_data' => $this->upload->data());

            $this->load->view('mod/upload_success', $data);
        }
    }
}
?>

Try this out.Hope this helps you----------- 尝试一下,希望对您有帮助-----------

$file_name = "";

if ($_FILES['image']['error']!= 4) {

            $fileParts = pathinfo($_FILES['image']['name']);
            $file_name = time() . '.' . $fileParts['extension'];
            $config['upload_path'] = './uploads/';
            $config['allowed_types'] = 'gif|jpg|png|jpeg';

            $config['file_name'] = $file_name;
            $this->load->library('upload', $config);
            $this->upload->initialize($config);
            $this->upload->do_upload('image');
        }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM