I have a Codeigniter project that can insert data into database through uploading an excel file and reading it with PHPExcel. It is working on my localhost however when I uploaded it in a LAMP server, It gives me an error The filetype you are attempting to upload is not allowed. How am I going to solve this?
EDIT In my project, I also have a file image uploading..
public function uploadConfig(){
$this->load->library('PHPExcel');
$this->load->library('PHPExcel/IOFactory');
$config['upload_path'] = './csv_uploads/';
$config['allowed_types'] = 'xlsx|csv|xls';
$config['max_size'] = '10000';
$config['overwrite'] = true;
$config['encrypt_name'] = FALSE;
$config['remove_spaces'] = TRUE;
$this->load->library('upload', $config);
$this->upload->initialize($config);
if (!is_dir('csv_uploads'))
{
mkdir('./csv_uploads', 0777, true);
}
// gif|jpg|jpeg|png
}
This works on my localhost in XAMPP. However, when I uploaded it on my LAMP server, it didn't work.
For The file type you are attempting to upload is not allowed this issue occur because of your file type is wrong or not fulfill.
Please apply below step to get your file type.
You can looking at system/libraries/Upload.php line 199:
Update that line to:
Now you can see your actual file type Like xlsx or csv or xls or ods
Now you can add your file type below code
also add in
config/mimes.php
Go to
config/mimes.php
-> lines no 32 (xls) -> add'application/vnd.ms-office'
into existing array.This work only for xls for any other type get the mime type and add into this array.
In your code
And in
config/mimes.php
add this
Provide Permeation to write in the folder
and in
php.ini
file_upload
is onCodeigniter 3
add to your config/mimes.php types 'application/octet-stream'
then it will work
In Your Code Add Below Line
this is configuration setting.