Codeigniter: wideo mp4 nie zostanie przesłane, bez błędu
Tworzę formularz do przesłania pliku wideo, ale mam dziwny błąd.
Mój formularz wygląda następująco:
<div style="color : red;"><?php echo $error;?></div>
<?php echo form_open_multipart('data_center/ajout_ressource/formulaire_video'); ?>
//various input text fields...
<input type="file" name="video">
<input type="submit" value="Ajouter cette ressource" />
</form>±
Moja metoda pobierania to (jest w środku, aby sprawdzić, czy reszta formularza jest w porządku):
$dir = './assets/video/';
$config['upload_path'] = $dir;
$config['allowed_types'] = 'avi|flv|wmv|mpeg|mp3|mp4';
$config['max_size'] = '102400';
$this->load->library('upload',$config);
if ( ! $this->upload->do_upload('video')){
$error = array('error' => $this->upload->display_errors());
$this->load->view('data_center/ajout_video', $error);
} else {
redirect('data_center/data_center/','refresh');
}
Jeśli chodzi o typy mime, myślę, że jest w porządku:
'mp4' => 'video/mp4',
'wmv' => array('video/wmv', 'video/x-ms-wmv', 'flv-application/octet-stream', 'application/octet-stream'),
'flv' => array('video/flv', 'video/x-flv', 'flv-application/octet-stream', 'application/octet-stream'),
'avi' => 'video/x-msvideo',
Kiedy próbuję przesłać plik mp4, automatycznie przekierowuje mnie (choć nie jestem pewien, że jest to przekierowanie) do formularza, bez wypełnienia i bez komunikatu o błędzie, nawet jeśli skomentuję linie w przypadku niepowodzenia przesyłania, aby nie załadować ponownie widoku lub jeśli reszta formularza jest niepoprawna (nie powinna próbować przesłać filmu i załadować wypełnionego formularza).
Podczas gdy na przykład umieszczam niewłaściwy typ pliku, widzę komunikat o błędzie („Typ pliku, który próbujesz przesłać, na przykład nie jest dozwolony”) lub jeśli formularz jest błędny, widzę błąd formularza .
Na koniec muszę dodać, że zmodyfikowałem php.ini, aby autoryzować takie duże pliki, i że zrobiłem to samo z formularzem dla zdjęć (jpg, jpeg, png ...), który działa doskonale, ale także przekierowuje mnie do niewypełniony formularz, jeśli próbuję przesłać plik .mp4.
Edytować:Właśnie pobrałem wideo flv, aby spróbować, i ładował się idealnie, ale jego rozmiar był mniejszy niż 8mb (domyślna konfiguracja), a plik flv 40mb miał ten sam problem co plik mp4, chociaż zmieniłem konfigurację w php.ini za 100mb