Android文件上传到某些设备上的php脚本问题

时间:2015-11-04 15:09:54

标签: php android

在我的Android应用程序中,我将一些文件上传到php脚本。代码在我的平板电脑上工作正常,但在其他一些设备上,上传失败了。文件的大小是设备上的一些文件。

我的上传代码:

 HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("myurl"
                + "/Mysql_Filesave.php");
        JSONObject json = new JSONObject();

        json.put("Type", type);
        json.put("FileName", files[i].getName());
        json.put("LocalPath", path);
        JSONArray postjson = new JSONArray();
        postjson.put(json);


        // Post the data:
        httppost.setHeader("json", json.toString());
        httppost.getParams().setParameter("jsonpost", postjson);

        MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
        FileBody fileBody = new FileBody(files[i]);
        reqEntity.addPart("file", fileBody);
        httppost.setEntity(reqEntity);      

        HttpResponse response = httpclient.execute(httppost);

我的PHP代码,用于检查是否有文件:

if (!isset($_FILES['file']['tmp_name'])) {      
    die("No file available");
}

因此有些设备会在此检查中死亡。这些文件大约10兆字节。 在PHP服务器上,我允许文件高达50M。

问题是什么?我没有任何线索,因为在某些设备上它可以工作,而在其他设备上则没有。

祝你好运, 彼得

1 个答案:

答案 0 :(得分:0)

自己发现问题: 修复了一些php.ini参数(max memory,max_post_size),现在上传工作正常