pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    <bdo id='oITr1'></bdo><ul id='oITr1'></ul>
  • <legend id='oITr1'><style id='oITr1'><dir id='oITr1'><q id='oITr1'></q></dir></style></legend>
  • <i id='oITr1'><tr id='oITr1'><dt id='oITr1'><q id='oITr1'><span id='oITr1'><b id='oITr1'><form id='oITr1'><ins id='oITr1'></ins><ul id='oITr1'></ul><sub id='oITr1'></sub></form><legend id='oITr1'></legend><bdo id='oITr1'><pre id='oITr1'><center id='oITr1'></center></pre></bdo></b><th id='oITr1'></th></span></q></dt></tr></i><div class="5dtblfl" id='oITr1'><tfoot id='oITr1'></tfoot><dl id='oITr1'><fieldset id='oITr1'></fieldset></dl></div>

    <small id='oITr1'></small><noframes id='oITr1'>

      1. <tfoot id='oITr1'></tfoot>
      2. 從Android設備上傳php服務器中的文件

        Uploading file in php server from android device(從Android設備上傳php服務器中的文件)

        <i id='X7sxJ'><tr id='X7sxJ'><dt id='X7sxJ'><q id='X7sxJ'><span id='X7sxJ'><b id='X7sxJ'><form id='X7sxJ'><ins id='X7sxJ'></ins><ul id='X7sxJ'></ul><sub id='X7sxJ'></sub></form><legend id='X7sxJ'></legend><bdo id='X7sxJ'><pre id='X7sxJ'><center id='X7sxJ'></center></pre></bdo></b><th id='X7sxJ'></th></span></q></dt></tr></i><div class="f7vhfb7" id='X7sxJ'><tfoot id='X7sxJ'></tfoot><dl id='X7sxJ'><fieldset id='X7sxJ'></fieldset></dl></div>

              <small id='X7sxJ'></small><noframes id='X7sxJ'>

              <tfoot id='X7sxJ'></tfoot>
              <legend id='X7sxJ'><style id='X7sxJ'><dir id='X7sxJ'><q id='X7sxJ'></q></dir></style></legend>
                <bdo id='X7sxJ'></bdo><ul id='X7sxJ'></ul>
                    <tbody id='X7sxJ'></tbody>
                  本文介紹了從Android設備上傳php服務器中的文件的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  限時送ChatGPT賬號..

                  我正在嘗試從我的 android 設備將文件上傳到 php 服務器,但服務器沒有收到任何文件.這是我的示例代碼,我在網上找到的.php服務器,我通過chunk上傳文件

                  I am trying to upload file to a php server from my android device but server is not receiving any file. here is my sample code, I found it on-line. php server , I am uploading a file through chunk

                  我的安卓代碼

                  import java.io.DataOutputStream;
                  import java.io.File;
                  import java.io.FileInputStream;
                  import java.net.HttpURLConnection;
                  import java.net.MalformedURLException;
                  import java.net.URL;
                  import android.app.Activity;
                  import android.app.ProgressDialog;
                  import android.content.Intent;
                  import android.database.Cursor;
                  import android.graphics.Bitmap;
                  import android.graphics.BitmapFactory;
                  import android.net.Uri;
                  import android.os.Bundle;
                  import android.provider.MediaStore;
                  import android.util.Log;
                  import android.view.View;
                  import android.view.View.OnClickListener;
                  import android.widget.Button;
                  import android.widget.ImageView;
                  import android.widget.TextView;
                  import android.widget.Toast;
                  
                  public class MainActivity extends Activity implements OnClickListener{
                  
                  private TextView messageText;
                  private Button uploadButton, btnselectpic;
                  private ImageView imageview;
                  private int serverResponseCode = 0;
                  private ProgressDialog dialog = null;
                  
                  private String upLoadServerUri = null;
                  private String imagepath=null;
                  @Override
                  public void onCreate(Bundle savedInstanceState) {
                  
                      super.onCreate(savedInstanceState);
                      setContentView(R.layout.activity_main);
                  
                      uploadButton = (Button)findViewById(R.id.uploadButton);
                      messageText  = (TextView)findViewById(R.id.messageText);
                      btnselectpic = (Button)findViewById(R.id.button_selectpic);
                      imageview = (ImageView)findViewById(R.id.imageView_pic);
                  
                      btnselectpic.setOnClickListener(this);
                      uploadButton.setOnClickListener(this);
                      upLoadServerUri = "http://192.168.2.4/fileupload/UploadToServer.php";
                  }
                  
                  
                  @Override
                  public void onClick(View arg0) {
                      if(arg0==btnselectpic)
                      {
                          Intent intent = new Intent();
                          intent.setType("image/*");
                          intent.setAction(Intent.ACTION_GET_CONTENT);
                          startActivityForResult(Intent.createChooser(intent, "Complete action using"), 1);
                      }
                      else if (arg0==uploadButton) {
                  
                           dialog = ProgressDialog.show(MainActivity.this, "", "Uploading file...", true);
                           messageText.setText("uploading started.....");
                           new Thread(new Runnable() {
                               public void run() {
                  
                                    uploadFile(imagepath);
                  
                               }
                             }).start();     
                      }
                  
                  } 
                  
                  @Override
                  protected void onActivityResult(int requestCode, int resultCode, Intent data) {
                  
                      if (requestCode == 1 && resultCode == RESULT_OK) {
                          //Bitmap photo = (Bitmap) data.getData().getPath(); 
                  
                          Uri selectedImageUri = data.getData();
                          imagepath = getPath(selectedImageUri);
                          Bitmap bitmap=BitmapFactory.decodeFile(imagepath);
                          imageview.setImageBitmap(bitmap);
                          messageText.setText("Uploading file path:" +imagepath);
                  
                      }
                  }
                       public String getPath(Uri uri) {
                              String[] projection = { MediaStore.Images.Media.DATA };
                              Cursor cursor = managedQuery(uri, projection, null, null, null);
                              int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
                              cursor.moveToFirst();
                              return cursor.getString(column_index);
                          }
                  
                  public int uploadFile(String sourceFileUri) {
                  
                  
                        String fileName = sourceFileUri;
                  
                        HttpURLConnection conn = null;
                        DataOutputStream dos = null;  
                        String lineEnd = "
                  ";
                        String twoHyphens = "--";
                        String boundary = "*****";
                        int bytesRead, bytesAvailable, bufferSize;
                        byte[] buffer;
                        int maxBufferSize = 1 * 1024 * 1024; 
                        File sourceFile = new File(sourceFileUri); 
                  
                        if (!sourceFile.isFile()) {
                  
                             dialog.dismiss(); 
                  
                             Log.e("uploadFile", "Source File not exist :"+imagepath);
                  
                             runOnUiThread(new Runnable() {
                                 public void run() {
                                     messageText.setText("Source File not exist :"+ imagepath);
                                 }
                             }); 
                  
                             return 0;
                  
                        }
                        else
                        {
                             try { 
                  
                                   // open a URL connection to the Servlet
                                 FileInputStream fileInputStream = new FileInputStream(sourceFile);
                                 URL url = new URL(upLoadServerUri);
                  
                                 // Open a HTTP  connection to  the URL
                                 conn = (HttpURLConnection) url.openConnection(); 
                                 conn.setDoInput(true); // Allow Inputs
                                 conn.setDoOutput(true); // Allow Outputs
                                 conn.setUseCaches(false); // Don't use a Cached Copy
                                 conn.setRequestMethod("POST");
                                 conn.setRequestProperty("Connection", "Keep-Alive");
                                 conn.setRequestProperty("ENCTYPE", "multipart/form-data");
                                 conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary);
                                 conn.setRequestProperty("file", fileName); 
                  
                                 dos = new DataOutputStream(conn.getOutputStream());
                  
                                 dos.writeBytes(twoHyphens + boundary + lineEnd); 
                                 dos.writeBytes("Content-Disposition: form-data; name="file";file""
                                                           + fileName + """ + lineEnd);
                  
                                 dos.writeBytes(lineEnd);
                  
                                 // create a buffer of  maximum size
                                 bytesAvailable = fileInputStream.available(); 
                  
                                 bufferSize = Math.min(bytesAvailable, maxBufferSize);
                                 buffer = new byte[bufferSize];
                  
                                 // read file and write it into form...
                                 bytesRead = fileInputStream.read(buffer, 0, bufferSize);  
                  
                                 while (bytesRead > 0) {
                  
                                   dos.write(buffer, 0, bufferSize);
                                   bytesAvailable = fileInputStream.available();
                                   bufferSize = Math.min(bytesAvailable, maxBufferSize);
                                   bytesRead = fileInputStream.read(buffer, 0, bufferSize);   
                  
                                  }
                  
                                 // send multipart form data necesssary after file data...
                                 dos.writeBytes(lineEnd);
                                 dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
                  
                                 // Responses from the server (code and message)
                                 serverResponseCode = conn.getResponseCode();
                                 String serverResponseMessage = conn.getResponseMessage();
                  
                                 Log.i("uploadFile", "HTTP Response is : "
                                         + serverResponseMessage + ": " + serverResponseCode);
                  
                                 if(serverResponseCode == 200){
                  
                                     runOnUiThread(new Runnable() {
                                          public void run() {
                                              String msg = "File Upload Completed.
                  
                   See uploaded file here : 
                  
                  "
                                                    +" c:/xamp/htdocs/file upload/uploads";
                                              messageText.setText(msg);
                                              Toast.makeText(MainActivity.this, "File Upload Complete.", Toast.LENGTH_SHORT).show();
                                          }
                                      });                
                                 }    
                  
                                 //close the streams //
                                 fileInputStream.close();
                                 dos.flush();
                                 dos.close();
                  
                            } catch (MalformedURLException ex) {
                  
                                dialog.dismiss();  
                                ex.printStackTrace();
                  
                                runOnUiThread(new Runnable() {
                                    public void run() {
                                        messageText.setText("MalformedURLException Exception : check script url.");
                                        Toast.makeText(MainActivity.this, "MalformedURLException", Toast.LENGTH_SHORT).show();
                                    }
                                });
                  
                                Log.e("Upload file to server", "error: " + ex.getMessage(), ex);  
                            } catch (Exception e) {
                  
                                dialog.dismiss();  
                                e.printStackTrace();
                  
                                runOnUiThread(new Runnable() {
                                    public void run() {
                                        messageText.setText("Got Exception : see logcat ");
                                        Toast.makeText(MainActivity.this, "Got Exception : see logcat ", Toast.LENGTH_SHORT).show();
                                    }
                                });
                                Log.e("Upload file to server Exception", "Exception : "  + e.getMessage(), e);  
                            }
                            dialog.dismiss();       
                            return serverResponseCode; 
                  
                         } // End else block 
                       }}
                  

                  PHP 服務器代碼在文件上傳中,我完成了通過塊完成的文件上傳,請任何人幫我發??送通過塊上傳的正確代碼文件和相關的 android 文件上傳代碼

                  PHP Server code in file uploading ,I am done file uploading done through chunk ,please anyone help me send right code file uploading through chunk and relevant android file uploading code

                  <?php
                  
                  if (empty($_FILES) || $_FILES['file']['error']) {
                  die('{"OK": 0, "info": "Failed to move uploaded file."}');
                  }
                  
                  $chunk = isset($_REQUEST["chunk"]) ? intval($_REQUEST["chunk"]) : 0;
                  $chunks = isset($_REQUEST["chunks"]) ? intval($_REQUEST["chunks"]) : 0;
                  
                  $fileName = isset($_REQUEST["name"]) ? $_REQUEST["name"] : $_FILES["file"]["name"];
                  $filePath = "uploads/$fileName";
                  
                  
                  // Open temp file
                  $out = @fopen("{$filePath}.part", $chunk == 0 ? "wb" : "ab");
                  //$out2 = @fopen("{$filePath}.part2", $chunk == 0 ? "wb" : "ab");
                  if ($out) {
                  // Read binary input stream and append it to temp file
                  $in = @fopen($_FILES['file']['tmp_name'], "rb");
                  
                  if ($in) {
                  while ($buff = fread($in, 4096))
                        fwrite($out, $buff);
                     //print($out);
                   // echo sizeof($out);
                  } else
                  die('{"OK": 0, "info": "Failed to open input stream."}');
                  
                  @fclose($in);
                  
                  @fclose($out);
                  
                  @unlink($_FILES['file']['tmp_name']);
                  } else
                  die('{"OK": 0, "info": "Failed to open output stream."}');
                  
                  
                  // Check if file has been uploaded
                  
                  if (!$chunks || $chunk == $chunks - 1)
                  {
                  // Strip the temp .part suffix off
                  rename("{$filePath}.part", $filePath);
                  }
                  
                  
                  die('{"OK": 1, "info": "Upload successful."}');?>
                  

                  推薦答案

                  我不知道你的代碼,但為你提供了兩個工作代碼:這適用于所有類型的文件.我將它用于圖像、音頻和視頻文件.

                  I don't know about your code but providing you both working codes: This is for all types of files. I used it for image, audio and for video files.

                  安卓:

                  new UploadFileAsync().execute("");
                  
                  
                  
                    private class UploadFileAsync extends AsyncTask<String, Void, String> {
                  
                      @Override
                      protected String doInBackground(String... params) {
                  
                          try {
                    String sourceFileUri = "/mnt/sdcard/abc.png";
                  
                              HttpURLConnection conn = null;
                              DataOutputStream dos = null;
                              String lineEnd = "
                  ";
                              String twoHyphens = "--";
                              String boundary = "*****";
                              int bytesRead, bytesAvailable, bufferSize;
                              byte[] buffer;
                              int maxBufferSize = 1 * 1024 * 1024;
                              File sourceFile = new File(sourceFileUri);
                  
                              if (sourceFile.isFile()) {
                  
                                  try {
                                      String upLoadServerUri = "http://website.com/abc.php?";
                  
                                      // open a URL connection to the Servlet
                                      FileInputStream fileInputStream = new FileInputStream(
                                              sourceFile);
                                      URL url = new URL(upLoadServerUri);
                  
                                      // Open a HTTP connection to the URL
                                      conn = (HttpURLConnection) url.openConnection();
                                      conn.setDoInput(true); // Allow Inputs
                                      conn.setDoOutput(true); // Allow Outputs
                                      conn.setUseCaches(false); // Don't use a Cached Copy
                                      conn.setRequestMethod("POST");
                                      conn.setRequestProperty("Connection", "Keep-Alive");
                                      conn.setRequestProperty("ENCTYPE",
                                              "multipart/form-data");
                                      conn.setRequestProperty("Content-Type",
                                              "multipart/form-data;boundary=" + boundary);
                                      conn.setRequestProperty("bill", sourceFileUri);
                  
                                      dos = new DataOutputStream(conn.getOutputStream());
                  
                                      dos.writeBytes(twoHyphens + boundary + lineEnd);
                                      dos.writeBytes("Content-Disposition: form-data; name="bill";filename=""
                                              + sourceFileUri + """ + lineEnd);
                  
                                      dos.writeBytes(lineEnd);
                  
                                      // create a buffer of maximum size
                                      bytesAvailable = fileInputStream.available();
                  
                                      bufferSize = Math.min(bytesAvailable, maxBufferSize);
                                      buffer = new byte[bufferSize];
                  
                                      // read file and write it into form...
                                      bytesRead = fileInputStream.read(buffer, 0, bufferSize);
                  
                                      while (bytesRead > 0) {
                  
                                          dos.write(buffer, 0, bufferSize);
                                          bytesAvailable = fileInputStream.available();
                                          bufferSize = Math
                                                  .min(bytesAvailable, maxBufferSize);
                                          bytesRead = fileInputStream.read(buffer, 0,
                                                  bufferSize);
                  
                                      }
                  
                                      // send multipart form data necesssary after file
                                      // data...
                                      dos.writeBytes(lineEnd);
                                      dos.writeBytes(twoHyphens + boundary + twoHyphens
                                              + lineEnd);
                  
                                      // Responses from the server (code and message)
                                      serverResponseCode = conn.getResponseCode();
                                      String serverResponseMessage = conn
                                              .getResponseMessage();
                  
                                      if (serverResponseCode == 200) {
                  
                                          // messageText.setText(msg);
                                          //Toast.makeText(ctx, "File Upload Complete.",
                                          //      Toast.LENGTH_SHORT).show();
                  
                                          // recursiveDelete(mDirectory1);
                  
                                      }
                  
                                      // close the streams //
                                      fileInputStream.close();
                                      dos.flush();
                                      dos.close();
                  
                                  } catch (Exception e) {
                  
                                      // dialog.dismiss();
                                      e.printStackTrace();
                  
                                  }
                                  // dialog.dismiss();
                  
                              } // End else block
                  
                  
                          } catch (Exception ex) {
                              // dialog.dismiss();
                  
                              ex.printStackTrace();
                          }
                          return "Executed";
                      }
                  
                      @Override
                      protected void onPostExecute(String result) {
                  
                      }
                  
                      @Override
                      protected void onPreExecute() {
                      }
                  
                      @Override
                      protected void onProgressUpdate(Void... values) {
                      }
                  }
                  

                  PHP::

                   <?php
                  
                  
                       if (is_uploaded_file($_FILES['bill']['tmp_name'])) {
                      $uploads_dir = './';
                                              $tmp_name = $_FILES['bill']['tmp_name'];
                                              $pic_name = $_FILES['bill']['name'];
                                              move_uploaded_file($tmp_name, $uploads_dir.$pic_name);
                                              }
                                 else{
                                     echo "File not uploaded successfully.";
                             }
                  
                     ?>
                  

                  這篇關于從Android設備上傳php服務器中的文件的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  enable SOAP on PHP(在 PHP 上啟用 SOAP)
                  Get received XML from PHP SOAP Server(從 PHP SOAP 服務器獲取接收到的 XML)
                  not a valid AllXsd value(不是有效的 AllXsd 值)
                  PHP SoapClient: SoapFault exception Could not connect to host(PHP SoapClient:SoapFault 異常無法連接到主機)
                  Implementation of P_SHA1 algorithm in PHP(PHP中P_SHA1算法的實現)
                  Sending a byte array from PHP to WCF(將字節數組從 PHP 發送到 WCF)
                  <tfoot id='jXDuh'></tfoot>

                        <tbody id='jXDuh'></tbody>

                      <legend id='jXDuh'><style id='jXDuh'><dir id='jXDuh'><q id='jXDuh'></q></dir></style></legend>
                      <i id='jXDuh'><tr id='jXDuh'><dt id='jXDuh'><q id='jXDuh'><span id='jXDuh'><b id='jXDuh'><form id='jXDuh'><ins id='jXDuh'></ins><ul id='jXDuh'></ul><sub id='jXDuh'></sub></form><legend id='jXDuh'></legend><bdo id='jXDuh'><pre id='jXDuh'><center id='jXDuh'></center></pre></bdo></b><th id='jXDuh'></th></span></q></dt></tr></i><div class="fjrpnbf" id='jXDuh'><tfoot id='jXDuh'></tfoot><dl id='jXDuh'><fieldset id='jXDuh'></fieldset></dl></div>
                        • <bdo id='jXDuh'></bdo><ul id='jXDuh'></ul>

                            <small id='jXDuh'></small><noframes id='jXDuh'>

                          • 主站蜘蛛池模板: 脑钠肽-白介素4|白介素8试剂盒-研域(上海)化学试剂有限公司 | 交流伺服电机|直流伺服|伺服驱动器|伺服电机-深圳市华科星电气有限公司 | 【铜排折弯机,钢丝折弯成型机,汽车发泡钢丝折弯机,线材折弯机厂家,线材成型机,铁线折弯机】贝朗折弯机厂家_东莞市贝朗自动化设备有限公司 | 常州翔天实验仪器厂-恒温振荡器-台式恒温振荡器-微量血液离心机 恒温恒湿箱(药品/保健品/食品/半导体/细菌)-兰贝石(北京)科技有限公司 | 合肥抖音SEO网站优化-网站建设-网络推广营销公司-百度爱采购-安徽企匠科技 | 半自动预灌装机,卡式瓶灌装机,注射器灌装机,给药器灌装机,大输液灌装机,西林瓶灌装机-长沙一星制药机械有限公司 | 广州冷却塔维修厂家_冷却塔修理_凉水塔风机电机填料抢修-广东康明节能空调有限公司 | 煤粉取样器-射油器-便携式等速飞灰取样器-连灵动 | 天津市能谱科技有限公司-专业的红外光谱仪_红外测油仪_紫外测油仪_红外制样附件_傅里叶红外光谱技术生产服务厂商 | 超声波清洗机_大型超声波清洗机_工业超声波清洗设备-洁盟清洗设备 | 上海小程序开发-小程序制作-上海小程序定制开发公司-微信商城小程序-上海咏熠 | 外观设计_设备外观设计_外观设计公司_产品外观设计_机械设备外观设计_东莞工业设计公司-意品深蓝 | 金属波纹补偿器厂家_不锈钢膨胀节价格_非金属伸缩节定制-庆达补偿器 | 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 变位机,焊接变位机,焊接变位器,小型变位机,小型焊接变位机-济南上弘机电设备有限公司 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 商用绞肉机-熟肉切片机-冻肉切丁机-猪肉开条机 - 广州市正盈机械设备有限公司 | 电子天平-华志电子天平厂家| 诗词大全-古诗名句 - 古诗词赏析 | 橡胶接头_橡胶软接头_套管伸缩器_管道伸缩器厂家-巩义市远大供水材料有限公司 | 合肥升降机-合肥升降货梯-安徽升降平台「厂家直销」-安徽鼎升自动化科技有限公司 | 博莱特空压机|博莱特-阿特拉斯独资空压机品牌核心代理商 | 正压密封性测试仪-静态发色仪-导丝头柔软性测试仪-济南恒品机电技术有限公司 | 金刚网,金刚网窗纱,不锈钢网,金刚网厂家- 河北萨邦丝网制品有限公司 | 石家庄小程序开发_小程序开发公司_APP开发_网站制作-石家庄乘航网络科技有限公司 | 北京中创汇安科贸有限公司 | 质构仪_鱼糜弹性仪-上海腾拔仪器科技有限公司 | 烟台金蝶财务软件,烟台网站建设,烟台网络推广 | 天然鹅卵石滤料厂家-锰砂滤料-石英砂滤料-巩义东枫净水 | 酒瓶_酒杯_玻璃瓶生产厂家_徐州明政玻璃制品有限公司 | 凝胶成像仪,化学发光凝胶成像系统,凝胶成像分析系统-上海培清科技有限公司 | 玻璃钢格栅盖板|玻璃钢盖板|玻璃钢格栅板|树篦子-长沙川皖玻璃钢制品有限公司 | 铝板冲孔网,不锈钢冲孔网,圆孔冲孔网板,鳄鱼嘴-鱼眼防滑板,盾构走道板-江拓数控冲孔网厂-河北江拓丝网有限公司 | 缠绕机|缠绕膜包装机|缠绕包装机-上海晏陵智能设备有限公司 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 济南电缆桥架|山东桥架-济南航丰实业有限公司 | 软文推广发布平台_新闻稿件自助发布_媒体邀约-澜媒宝 | 注塑模具_塑料模具_塑胶模具_范仕达【官网】_东莞模具设计与制造加工厂家 | 滚筒线,链板线,总装线,流水线-上海体能机电有限公司 | 丙烷/液氧/液氮气化器,丙烷/液氧/液氮汽化器-无锡舍勒能源科技有限公司 | 伺服电机维修、驱动器维修「安川|三菱|松下」伺服维修公司-深圳华创益 |