php – 将图像从Android上传到MySQL数据库
发布时间:2020-12-13 16:46:22 所属栏目:PHP教程 来源:网络整理
导读:美好的一天!我正在尝试搜索从 Android上传图像文件到在线MySQL数据库的基本教程,但我找不到任何. 我现在正在开展一项活动,可以将用户的个人资料图片从Android上传到在线服务器. 我需要的是显示一个按钮,当它被点击时,用户可以从文件中选择一个图像.有人可以
美好的一天!我正在尝试搜索从
Android上传图像文件到在线MySQL数据库的基本教程,但我找不到任何.
我现在正在开展一项活动,可以将用户的个人资料图片从Android上传到在线服务器. 我需要的是显示一个按钮,当它被点击时,用户可以从文件中选择一个图像.有人可以指导我这样做吗?提前致谢! 解决方法
在客户端,您可以这样做.
HttpURLConnection connection = null; DataOutputStream outputStream = null; DataInputStream inputStream = null; String pathToOurFile = "path of the image.jpeg"; String urlServer = "http://xxx.xxx.xxx.xxx/uploader.php"; String lineEnd = "rn"; String twoHyphens = "--"; String boundary = "*****"; int bytesRead,bytesAvailable,bufferSize; byte[] buffer; int maxBufferSize = 1*1024*1024; try { FileInputStream fileInStream = new FileInputStream(new File(pathToOurFile) ); URL url = new URL(urlServer); connection = (HttpURLConnection) url.openConnection(); // Allow Inputs & Outputs connection.setDoInput(true); connection.setDoOutput(true); connection.setUseCaches(false); // Enable POST method connection.setRequestMethod("POST"); connection.setRequestProperty("Connection","Keep-Alive"); connection.setRequestProperty("Content-Type","multipart/form-data;boundary="+boundary); outputStream = new DataOutputStream( connection.getOutputStream() ); outputStream.writeBytes(twoHyphens + boundary + lineEnd); outputStream.writeBytes("Content-Disposition: form-data; name="uploadedfile";filename="" + pathToOurFile +""" + lineEnd); outputStream.writeBytes(lineEnd); bytesAvailable = fileInStream.available(); bufferSize = Math.min(bytesAvailable,maxBufferSize); buffer = new byte[bufferSize]; // Read file bytesRead = fileInStream.read(buffer,bufferSize); while (bytesRead > 0) { outputStream.write(buffer,bufferSize); bytesAvailable = fileInStream.available(); bufferSize = Math.min(bytesAvailable,maxBufferSize); bytesRead = fileInStream.read(buffer,bufferSize); } outputStream.writeBytes(lineEnd); outputStream.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd); // Responses from the server (code and message) serverResponseCode = connection.getResponseCode(); serverResponseMessage = connection.getResponseMessage(); fileInputStream.close(); outputStream.flush(); outputStream.close(); } catch (Exception ex) { //Exception handling } 服务器端 <?php $target_path = "./"; $target_path = $target_path . basename( $_FILES['uploadedfile']['name']); if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'],$target_path)) { echo "Success"; } else{ echo "Error"; } ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |