Codeigniter: "The Filetype You Are Attempting to Upload Is Not Allowed."

CodeIgniter: The filetype you are attempting to upload is not allowed.

You are using Firefox, aren't you?

You could try looking at system/libraries/Upload.php line 199:

$this->_file_mime_type($_FILES[$field]);

Change that line to:

$this->_file_mime_type($_FILES[$field]); var_dump($this->file_type); die();

Then do upload your .wmv file. It would show something like application/octet-stream or whatever. Add that to your mimes.php. Hope this help =)

Similar answer here

Some links:

  • CodeIgniter forum's thread
  • Mimetype corruption in Firefox
  • Getting around IE’s MIME type mangling

Codeigniter: The filetype you are attempting to upload is not allowed

SOLUTION:
I've try to upload it to server. But it still gives me the same error. Then i found this: Codeigniter : The filetype you are attempting to upload is not allowed. Yesterday it was fine
"The most recent time I have had this is when I upgraded my core Codeiginter version from 2.x to 3.x. I updated the contents of the system directory, but not application/config. I didn't spot the fact that the application/config/mimes.php file is slightly different - the newer version returns an array whereas the old one included it as a var. The fix was to copy in the newer version of mimes.php"

Codeigniter error: The filetype you are attempting to upload is not allowed

check 2 things:

First:
in your upload controller: make sure to set the correct allowed types

$config['allowed_types'] = 'csv';
$this->load->library('upload', $config);

Second:
update the array $mimes in your config/mimes.php:

'csv'   =>  array('application/vnd.ms-excel', 
'text/anytext',
'text/plain',
'text/x-comma-separated-values',
'text/comma-separated-values',
'application/octet-stream',
'application/vnd.ms-excel',
'application/x-csv',
'text/x-csv',
'text/csv',
'application/csv',
'application/excel',
'application/vnd.msexcel')

UPDATE:

you could use print_r($_FILES) in your upload controller to check for the mime-type missing. this would output something like:

[userfile] => Array
(
[name] => teste1.csv
[type] => application/vnd.ms-excel
[tmp_name] => C:\Program Files (x86)\EasyPHP-DevServer-13.1VC11\binaries\tmp\php8BFD.tmp
[error] => 0
[size] => 7880
)

CodeIgniter: The filetype you are attempting to upload is not allowed. isset($this- _mimes[$ext]) is always null

I figured this out. It was because of the mimes.php file. Previously, CodeIgniter provided mimes.php with this format. $mimes = array( 'hqx' => 'application/mac-binhex40',.... However, the current CodeIgniter changed the format as return array(
'hqx' => array('application/mac-binhex40', ...
. When I updated the framework, I didn't update mimes.php file. Thank you so much Alex for providing me a hint!

Here is the modified mimes.php.





<?php

defined('BASEPATH') OR exit('No direct script access allowed');


/*

| -------------------------------------------------------------------

| MIME TYPES

| -------------------------------------------------------------------

| This file contains an array of mime types. It is used by the

| Upload class to help identify allowed file types.

|

*/

return array(

'hqx' => array('application/mac-binhex40', 'application/mac-binhex', 'application/x-binhex40', 'application/x-mac-binhex40'),

'cpt' => 'application/mac-compactpro',

'csv' => array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel', 'text/plain'),

'bin' => array('application/macbinary', 'application/mac-binary', 'application/octet-stream', 'application/x-binary', 'application/x-macbinary'),

'dms' => 'application/octet-stream',

'lha' => 'application/octet-stream',

'lzh' => 'application/octet-stream',

'exe' => array('application/octet-stream', 'application/x-msdownload'),

'class' => 'application/octet-stream',

'psd' => array('application/x-photoshop', 'image/vnd.adobe.photoshop'),

'so' => 'application/octet-stream',

'sea' => 'application/octet-stream',

'dll' => 'application/octet-stream',

'oda' => 'application/oda',

'pdf' => array('application/pdf', 'application/force-download', 'application/x-download', 'binary/octet-stream'),

'ai' => array('application/pdf', 'application/postscript'),

'eps' => 'application/postscript',

'ps' => 'application/postscript',

'smi' => 'application/smil',

'smil' => 'application/smil',

'mif' => 'application/vnd.mif',

'xls' => array('application/vnd.ms-excel', 'application/msexcel', 'application/x-msexcel', 'application/x-ms-excel', 'application/x-excel', 'application/x-dos_ms_excel', 'application/xls', 'application/x-xls', 'application/excel', 'application/download', 'application/vnd.ms-office', 'application/msword'),

'ppt' => array('application/powerpoint', 'application/vnd.ms-powerpoint', 'application/vnd.ms-office', 'application/msword'),

'pptx' => array('application/vnd.openxmlformats-officedocument.presentationml.presentation', 'application/x-zip', 'application/zip'),

'wbxml' => 'application/wbxml',

'wmlc' => 'application/wmlc',

'dcr' => 'application/x-director',

'dir' => 'application/x-director',

'dxr' => 'application/x-director',

'dvi' => 'application/x-dvi',

'gtar' => 'application/x-gtar',

'gz' => 'application/x-gzip',

'gzip' => 'application/x-gzip',

'php' => array('application/x-httpd-php', 'application/php', 'application/x-php', 'text/php', 'text/x-php', 'application/x-httpd-php-source'),

'php4' => 'application/x-httpd-php',

'php3' => 'application/x-httpd-php',

'phtml' => 'application/x-httpd-php',

'phps' => 'application/x-httpd-php-source',

'js' => array('application/x-javascript', 'text/plain'),

'swf' => 'application/x-shockwave-flash',

'sit' => 'application/x-stuffit',

'tar' => 'application/x-tar',

'tgz' => array('application/x-tar', 'application/x-gzip-compressed'),

'z' => 'application/x-compress',

'xhtml' => 'application/xhtml+xml',

'xht' => 'application/xhtml+xml',

'zip' => array('application/x-zip', 'application/zip', 'application/x-zip-compressed', 'application/s-compressed', 'multipart/x-zip'),

'rar' => array('application/x-rar', 'application/rar', 'application/x-rar-compressed'),

'mid' => 'audio/midi',

'midi' => 'audio/midi',

'mpga' => 'audio/mpeg',

'mp2' => 'audio/mpeg',

'mp3' => array('audio/mpeg', 'audio/mpg', 'audio/mpeg3', 'audio/mp3'),

'aif' => array('audio/x-aiff', 'audio/aiff'),

'aiff' => array('audio/x-aiff', 'audio/aiff'),

'aifc' => 'audio/x-aiff',

'ram' => 'audio/x-pn-realaudio',

'rm' => 'audio/x-pn-realaudio',

'rpm' => 'audio/x-pn-realaudio-plugin',

'ra' => 'audio/x-realaudio',

'rv' => 'video/vnd.rn-realvideo',

'wav' => array('audio/x-wav', 'audio/wave', 'audio/wav'),

'bmp' => array('image/bmp', 'image/x-bmp', 'image/x-bitmap', 'image/x-xbitmap', 'image/x-win-bitmap', 'image/x-windows-bmp', 'image/ms-bmp', 'image/x-ms-bmp', 'application/bmp', 'application/x-bmp', 'application/x-win-bitmap'),

'gif' => 'image/gif',

'jpeg' => array('image/jpeg', 'image/pjpeg'),

'jpg' => array('image/jpeg', 'image/pjpeg'),

'jpe' => array('image/jpeg', 'image/pjpeg'),

'jp2' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'j2k' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'jpf' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'jpg2' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'jpx' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'jpm' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'mj2' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'mjp2' => array('image/jp2', 'video/mj2', 'image/jpx', 'image/jpm'),

'png' => array('image/png', 'image/x-png'),

'tiff' => 'image/tiff',

'tif' => 'image/tiff',

'css' => array('text/css', 'text/plain'),

'html' => array('text/html', 'text/plain'),

'htm' => array('text/html', 'text/plain'),

'shtml' => array('text/html', 'text/plain'),

'txt' => 'text/plain',

'text' => 'text/plain',

'log' => array('text/plain', 'text/x-log'),

'rtx' => 'text/richtext',

'rtf' => 'text/rtf',

'xml' => array('application/xml', 'text/xml', 'text/plain'),

'xsl' => array('application/xml', 'text/xsl', 'text/xml'),

'mpeg' => 'video/mpeg',

'mpg' => 'video/mpeg',

'mpe' => 'video/mpeg',

'qt' => 'video/quicktime',

'mov' => 'video/quicktime',

'avi' => array('video/x-msvideo', 'video/msvideo', 'video/avi', 'application/x-troff-msvideo'),

'movie' => 'video/x-sgi-movie',

'doc' => array('application/msword', 'application/vnd.ms-office'),

'docx' => array('application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/zip', 'application/msword', 'application/x-zip'),

'dot' => array('application/msword', 'application/vnd.ms-office'),

'dotx' => array('application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/zip', 'application/msword'),

'xlsx' => array('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/zip', 'application/vnd.ms-excel', 'application/msword', 'application/x-zip'),

'word' => array('application/msword', 'application/octet-stream'),

'xl' => 'application/excel',

'eml' => 'message/rfc822',

'json' => array('application/json', 'text/json'),

'pem' => array('application/x-x509-user-cert', 'application/x-pem-file', 'application/octet-stream'),

'p10' => array('application/x-pkcs10', 'application/pkcs10'),

'p12' => 'application/x-pkcs12',

'p7a' => 'application/x-pkcs7-signature',

'p7c' => array('application/pkcs7-mime', 'application/x-pkcs7-mime'),

'p7m' => array('application/pkcs7-mime', 'application/x-pkcs7-mime'),

'p7r' => 'application/x-pkcs7-certreqresp',

'p7s' => 'application/pkcs7-signature',

'crt' => array('application/x-x509-ca-cert', 'application/x-x509-user-cert', 'application/pkix-cert'),

'crl' => array('application/pkix-crl', 'application/pkcs-crl'),

'der' => 'application/x-x509-ca-cert',

'kdb' => 'application/octet-stream',

'pgp' => 'application/pgp',

'gpg' => 'application/gpg-keys',

'sst' => 'application/octet-stream',

'csr' => 'application/octet-stream',

'rsa' => 'application/x-pkcs7',

'cer' => array('application/pkix-cert', 'application/x-x509-ca-cert'),

'3g2' => 'video/3gpp2',

'3gp' => array('video/3gp', 'video/3gpp'),

'mp4' => 'video/mp4',

'm4a' => 'audio/x-m4a',

'f4v' => array('video/mp4', 'video/x-f4v'),

'flv' => 'video/x-flv',

'webm' => 'video/webm',

'aac' => 'audio/x-acc',

'm4u' => 'application/vnd.mpegurl',

'm3u' => 'text/plain',

'xspf' => 'application/xspf+xml',

'vlc' => 'application/videolan',

'wmv' => array('video/x-ms-wmv', 'video/x-ms-asf'),

'au' => 'audio/x-au',

'ac3' => 'audio/ac3',

'flac' => 'audio/x-flac',

'ogg' => array('audio/ogg', 'video/ogg', 'application/ogg'),

'kmz' => array('application/vnd.google-earth.kmz', 'application/zip', 'application/x-zip'),

'kml' => array('application/vnd.google-earth.kml+xml', 'application/xml', 'text/xml'),

'ics' => 'text/calendar',

'ical' => 'text/calendar',

'zsh' => 'text/x-scriptzsh',

'7z' => array('application/x-7z-compressed', 'application/x-compressed', 'application/x-zip-compressed', 'application/zip', 'multipart/x-zip'),

'7zip' => array('application/x-7z-compressed', 'application/x-compressed', 'application/x-zip-compressed', 'application/zip', 'multipart/x-zip'),

'cdr' => array('application/cdr', 'application/coreldraw', 'application/x-cdr', 'application/x-coreldraw', 'image/cdr', 'image/x-cdr', 'zz-application/zz-winassoc-cdr'),

'wma' => array('audio/x-ms-wma', 'video/x-ms-asf'),

'jar' => array('application/java-archive', 'application/x-java-application', 'application/x-jar', 'application/x-compressed'),

'svg' => array('image/svg+xml', 'application/xml', 'text/xml'),

'vcf' => 'text/x-vcard',

'srt' => array('text/srt', 'text/plain'),

'vtt' => array('text/vtt', 'text/plain'),

'ico' => array('image/x-icon', 'image/x-ico', 'image/vnd.microsoft.icon'),

'odc' => 'application/vnd.oasis.opendocument.chart',

'otc' => 'application/vnd.oasis.opendocument.chart-template',

'odf' => 'application/vnd.oasis.opendocument.formula',

'otf' => 'application/vnd.oasis.opendocument.formula-template',

'odg' => 'application/vnd.oasis.opendocument.graphics',

'otg' => 'application/vnd.oasis.opendocument.graphics-template',

'odi' => 'application/vnd.oasis.opendocument.image',

'oti' => 'application/vnd.oasis.opendocument.image-template',

'odp' => 'application/vnd.oasis.opendocument.presentation',

'otp' => 'application/vnd.oasis.opendocument.presentation-template',

'ods' => 'application/vnd.oasis.opendocument.spreadsheet',

'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',

'odt' => 'application/vnd.oasis.opendocument.text',

'odm' => 'application/vnd.oasis.opendocument.text-master',

'ott' => 'application/vnd.oasis.opendocument.text-template',

'oth' => 'application/vnd.oasis.opendocument.text-web'

);

JSON Upload Codeigniter 3 The filetype you are attempting to upload is not allowed

making my comments an answer:

  1. Check your server's mime types, because not all hosting providers
    install all the mime types!

  2. add text/plain to your 'json' in application\config\mimes.php:

    'json' => array('application/json', 'text/json', 'text/plain'),

note: adding text/plain also often resolves *.csv mime type issues, so keep that in mind for other applications

CodeIgniter upload txt doc - The filetype you are attempting to upload is not allowed

Did you check the file_type that your server is actually receiving?

var_dump($this->upload->data());

Then you can check if your mimes is really right.

hope it helps

@edit

it seems that you are trying to upload an empty file. If you need your app to accept even empty files, you can do this in mimes.php (line 'txt'):

'txt'   =>  array('text/plain', 'application/x-empty'),

Uploading in Codeigniter - The filetype you are attempting to upload is not allowed

If you're using Codeigniter version 2.1.0 there is a bug in the Upload library. See http://codeigniter.com/forums/viewthread/204725/ for more details.

Basically what I did was modify a few lines of code in the File Upload Class (Location: ./system/libraries/Upload.php)

1) modify Line number 1044

from:

$this->file_type = @mime_content_type($file['tmp_name']);
return;

to this:

$this->file_type = @mime_content_type($file['tmp_name']);
if (strlen($this->file_type) > 0) return;

2) modify line number 1058

from:

@exec('file --brief --mime-type ' . escapeshellarg($file['tmp_path']), $output, $return_code);

to this:

@exec('file --brief --mime-type ' . escapeshellarg($file['tmp_name']), $output, $return_code); 

As you can probably see, line 1058 tries to use an array value that does not exist.

CodeIgniter upload fails - filetype is not allowed


This is working in my code Perfectly and uploaded file move to my folder.

controller

public function addd(){

$images = "property.".pathinfo($_FILES['images']['name'],
PATHINFO_EXTENSION);

$addimg = array(
"images" => $images,
);

$this->db->insert("tbl_name",$addimg);

$uploadPath = "./html/images/property";

$config['upload_path'] = $uploadPath;
$config['allowed_types'] = 'gif|jpg|png|pdf|mp4';
$config['overwrite'] = TRUE;
$config['encrypt_name'] = FALSE;
$config['remove_spaces'] = TRUE;

$config['file_name'] = "property";
$this->load->library('upload', $config);
$this->upload->do_upload('images');
$this->upload->display_errors();
}


Related Topics



Leave a reply



Submit