Как сделать поле файла обязательным для codeigniter - PullRequest
1 голос
/ 16 июня 2011

Массив поддержки проверки формы Codeigniter для проверки, он не поддерживает массив $ _FILE для проверки.

Я хочу проверить поле файла, как требуется, как это правило

$ rules['file'] = "trim | required";

Пожалуйста, помогите мне, как сделать поле файла обязательным.

Ответы [ 3 ]

1 голос
/ 16 июня 2011

Надеюсь, что HTML-код в вашей форме будет выглядеть так:

<form method="post" action="">
    <div class="form_label">
        <label for="form_field_name">Select : </label>
        <input type="file" name="form_field_name" />
    </div>
    <div class="message"><?php echo (isset($message['error'])) ? '<div class="error">' . $message['error'] . '</div>' : (isset($message['success']) ? '<div class="success">' . $message['success'] . '</div>' : ''); ?>
</form>

Перейдем к контроллеру кодов:

<?php
class My_upload extends CI_Controller
{
    function __construct()
    {
        parent::__construct();
    }

    function upload_me()
    {
        $data['message'] = array();
        if(isset($_POST['submit'])) {
            $this->load->model('my_upload_model', 'umodel');
            $data['message'] = $this->umodel->upload_me();
        }
        $this->load->view('file_upload');
    }
}
?>

Нет проверки файла на контроллере, давайте сделаем это в модели:

<?php
class My_upload_model extends CI_Model
{
    function __construct()
    {
        parent::__construct();
    }

    function upload_me()
    {
        // file upload configuration start //
        $config['file_upload_path'] = FCPATH . 'my_file_directory' . DIRECTORY_SEPARATOR . 'sub_directory' . DIRECTORY_SEPARATOR;
        $config['allowed_extensions'] = 'gif|jpg|jpeg|png|bmp';

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

        if ( ! $this->upload->do_upload('form_field_name')) {
            return array('error' => $this->upload->display_errors());
        } else {
            return array('success' => 'File is uploaded successfully.');
        }
        // end file uploading //
    }
}
?>

Вы можете добавить больше конфигурации в соответствии с вашими требованиями. Подробнее здесь http://codeigniter.com/user_guide/libraries/file_uploading.html

Надеюсь, это поможет вам, дайте нам знать, если что-нибудь есть. пожалуйста, вставьте код ...

Спасибо

0 голосов
/ 24 августа 2015

Используя это, вы можете сделать обязательным поле файла

$this->form_validation->set_rules('userfile', 'Document', 'required');
0 голосов
/ 27 июня 2014

На самом деле вы можете использовать массив $ _FILES, чтобы проверить, я делал это несколько раз в CI?

    if (isset($_FILES)) 
    {   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...