Я не могу загрузить mp3 файлы, используя Codeigniter - PullRequest
0 голосов
/ 12 мая 2010

Есть много предложенных исправлений для этого, но ни одно из них не работает для меня. Я попытался сделать класс загрузки (используя следующие методы: Method1 и Method2 ). Когда я пытаюсь загрузить mp3, я получаю следующее сообщение об ошибке

Тип файла, который вы пытаетесь загрузить, запрещен

Ниже приведен мой код для моей модели и формы (у меня очень тонкий контроллер). Если бы кто-то мог помочь мне с этим, я был бы вечно благодарен.

Модель

function do_upload()
{

        $soundfig['upload_path'] = './uploads/nav';
        $soundfig['allowed_types'] = 'mp3';

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

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

            return $error;
        }   
        else
        {

            /* $data = $this->upload->data('userfile'); */
            $sound = $this->upload->data();
            /* $full_path = 'uploads/nav/' . $data['file_name']; */
            $sound_path = 'uploads/nav/' . $sound['file_name'];

            if($this->input->post('active') == '1'){
                $active = '1';
            }else{
                $active = '0';
            }

            $spam = array(
                /* 'image_url' => $full_path, */
                'sound' => $sound_path,
                'active' => $active,
                'url' => $this->input->post('url')
            );

            $id = $this->input->post('id');

            $this->db->where('id', $id);
            $this->db->update('NavItemData', $spam);

            return true;

    }
}

Просмотр формы

<?php echo form_open_multipart('upload/do_upload');?>
<?php if(isset($buttons)) : foreach($buttons as $row) : ?>
<h2><?php echo $row->name; ?></h2>
<!-- <input type="file" name="userfile" size="20" /><br /> -->
<input type="file" name="userfile" size="20" />
<input type="hidden" name="oldfile" value="<?php echo $row->image_url; ?>" />
<input type="hidden" name="id" value="<?php echo $row->id; ?>" />

<br /><br />
<label>Url: </label><input type="text" name="url" value="<?php echo $row->url; ?>" /><br />
<input type="checkbox" name="active" value="1" <?php if($row->active == '1') { echo 'checked'; } ?> /><br /><br />
<input type="submit" value="submit" />

</form>

<?php endforeach; ?>
<?php endif; ?>

1 Ответ

4 голосов
/ 14 мая 2010

Да, у меня была похожая проблема с этой загрузкой типов документов / изображений в класс загрузки файлов codeigniter; Обходной путь для меня заключался в том, чтобы добавить типы mime 'application / octet-stream' для каждого типа, с которым у меня возникли проблемы, например:

В приложении / config / mimes.php

'jpeg'  =>  array('image/jpeg', 'image/pjpeg', 'application/octet-stream'),
'jpg'   =>  array('image/jpeg', 'image/pjpeg', 'application/octet-stream'),
'jpe'   =>  array('image/jpeg', 'image/pjpeg', 'application/octet-stream'),
'png'   =>  array('image/png',  'image/x-png', 'application/octet-stream'), 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...