Solved

Can not upload .apk file in CodeIgniter

Posted on 2011-09-19
12
1,865 Views
Last Modified: 2012-05-12
Hello,

I am working on application that upload some kind of file from PC to the server. I am using Codeigniter PHP frame work. The kind of files are either images (gif, jppg, png) and Android application package file (.apk). With images file the code work fine but when I am trying to upload .apk it give me:

The filetype you are attempting to upload is not allowed.

I added this line in the mime.php file in the Codeigniter config:
'apk' => 'application/vnd.android.package-archive'

Open in new window


What is missing or I have to do ??
0
Comment
Question by:Ahmed Merghani
  • 6
  • 4
  • 2
12 Comments
 
LVL 4

Expert Comment

by:h4hardy
ID: 36565207
Hi fishboy,

you can try with the below code,

$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png|apk';
$config['max_size'] = '100';
$config['max_width'] = '1024';
$config['max_height'] = '768';

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

// Alternately you can set preferences by calling the initialize function. Useful if you auto-load the class:
$this->upload->initialize($config);

Open in new window

0
 
LVL 7

Accepted Solution

by:
boon86 earned 500 total points
ID: 36565215
hi,

you probably need to add the mime type to mimes.php and to config files. Please read:

http://codeigniter.com/user_guide/libraries/file_uploading.html
and
http://codeigniter.com/forums/viewthread/145893/

hope that help.
0
 
LVL 8

Author Comment

by:Ahmed Merghani
ID: 36565819
Thanks all for reply.
h4hardy, I forget to mention that I already apply your code.
boon86, I will go throw the links and feedback.

regards
0
 
LVL 4

Expert Comment

by:h4hardy
ID: 36565847
hi fishboy,

so is that not working?
0
 
LVL 8

Author Comment

by:Ahmed Merghani
ID: 36565988
yes did not work and give me this as I mentioned:

The filetype you are attempting to upload is not allowed.

Open in new window

0
 
LVL 7

Expert Comment

by:boon86
ID: 36566054
try add: inside this: system/application/config/mimes.php

'apk'    =>    array('application/vnd.android.package-archive', 'application/x-download', 'application/unknown'),

if not work try:
'apk'    =>    array('application/vnd.android.package-archive', 'application/x-download', 'application/force-download'),


also inside your .htaccess:

AddType application/vnd.android.package-archive apk


hope that help
0
Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

 
LVL 8

Author Comment

by:Ahmed Merghani
ID: 36566538
Thanks boon86 for response I tried the first and second code but give the same error.

regarding the .htaccess file, where I can find it?

NOTE: I am using CodIgniter version 2.0.3.
0
 
LVL 7

Expert Comment

by:boon86
ID: 36566685
.htaccess can be found on directory of:

/public_html/
/htdocs/
/httpdocs/
/www/

depend on your server setting.
0
 
LVL 8

Author Comment

by:Ahmed Merghani
ID: 36568425
I am using WAMP on window XP. I did not found the file in any one of the suggested directory.

But in CodeIgniter I found it in the application directory and this is the content:
Deny from all

Open in new window


I try to add/replace with "AddType application/vnd.android.package-archive apk" but still the same result.
0
 
LVL 7

Expert Comment

by:boon86
ID: 36571546
i forget the . symbol:

try add this inside .htaccess where your project working on:
AddType application/vnd.android.package-archive .apk

Open in new window

0
 
LVL 8

Author Comment

by:Ahmed Merghani
ID: 36571810
boon86, yes I tried this but the same.

Any one can help?
0
 
LVL 8

Author Comment

by:Ahmed Merghani
ID: 36572064
Hi boon86,

Your comments and above links specially the second one lead me to the solution.

Find the mimes.php. For CodeIgniter version 2.x, it will be inside:
application/config/

And for previous version, it will be inside:
system/application/config/

Add this line:
'apk' => 'application/octet-stream'

Open in new window


This work fine but I advice to add this line:
'apk' => array('application/vnd.android.package-archive', 'application/octet-stream')

Open in new window


Thanks all for help.
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Batch, VBS, and scripts in general are incredibly useful for repetitive tasks.  Some tasks can take a while to complete and it can be annoying to check back only to discover that your script finished 5 minutes ago.  Some scripts may complete nearly …
Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
Learn the basics of if, else, and elif statements in Python 2.7. Use "if" statements to test a specified condition.: The structure of an if statement is as follows: (CODE) Use "else" statements to allow the execution of an alternative, if the …
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now