很多站长朋友们都不太清楚手机图片上传php,今天小编就来给大家整理手机图片上传php,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php手机站,怎么上传图片给服务器(提交给接口api处理) 2、 android + php 上传图片到服务器 3、 php 手机网页上传图片 $_FILES 下面的 type 不是jpg,png,gif 怎么解决? 4、 用php实现手机拍照+本地相册实现图片上传功能,需要统一样式 5、 怎样把安卓的照片上传到php的服务器 6、 php开发手机网站上传图片问题! php手机站,怎么上传图片给服务器(提交给接口api处理)上传操作可以使用FTP来实现,用php即可调用。
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
android + php 上传图片到服务器<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.READ_FRAME_BUFFER"
tools:ignore="ProtectedPermissions" />
$target_path = "./test/";//接收文件目录
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";
} else{
echo "There was an error uploading the file, please try again!" . $_FILES['uploadedfile']['error'];
}
private static final String CHARST ="UTF-8";
public boolean uploadFile(File file,String RequestURL,String imgname) {
String BOUNDARY =UUID.randomUUID().toString();// 边界标识 随机生成
String PREFIX ="--",LINE_END ="\r\n";
String CONTENT_TYPE ="multipart/form-data";// 内容类型
try {
URL url =new URL(RequestURL);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setReadTimeout(50000);
conn.setConnectTimeout(50000);
conn.setDoInput(true);// 允许输入流
conn.setDoOutput(true);// 允许输出流
conn.setUseCaches(false);// 不允许使用缓存
conn.setRequestMethod("POST");// 请求方式
conn.setRequestProperty("Charset",CHARST);
// 设置编码
conn.setRequestProperty("connection","keep-alive");
conn.setRequestProperty("Content-Type",CONTENT_TYPE +";boundary="
+BOUNDARY);
if (file !=null) {
/** * 当文件不为空,把文件包装并且上传 */
OutputStream outputSteam =conn.getOutputStream();
DataOutputStream dos =new DataOutputStream(outputSteam);
StringBuffer sb =new StringBuffer();
sb.append(PREFIX);
sb.append(BOUNDARY);
sb.append(LINE_END);
/**
* 这里重点注意: name里面的值为服务器端需要key 只有这个key 才可以得到对应的文件
*/
sb.append("Content-Disposition: form-data; name=\"uploadedfile\"; filename=\""
+imgname +".png" +"\"" +LINE_END);//file.getName()
sb.append("Content-Type: application/octet-stream; charset="
+CHARST +LINE_END);
sb.append(LINE_END);
dos.write(sb.toString().getBytes());
InputStream is =new FileInputStream(file);
byte[]bytes =new byte[1024];
int len =0;
// ImageView img = (ImageView) findViewById(R.id.imageView);
// Bitmap bitmap = BitmapFactory.decodeStream(is);
// img.setImageBitmap(bitmap);
while ((len =is.read(bytes)) != -1) {
dos.write(bytes,0, len);
}
is.close();
dos.write(LINE_END.getBytes());
byte[]end_data = (PREFIX +BOUNDARY +PREFIX +LINE_END).getBytes();
dos.write(end_data);
dos.flush();
dos.close();
/**
* 获取响应码 200=成功 当响应成功,获取响应的流
*/
int res =conn.getResponseCode();
Log.e("111","response code:" +res);
if (res ==200) {
return true;
}
}
}catch (MalformedURLException e) {
e.printStackTrace();
}catch (IOException e) {
e.printStackTrace();
}
return false;
}
new Thread() {
@Override
public void run() {
String fileName =Environment.getExternalStorageDirectory().getAbsolutePath() +"/facepass/001.png";
File filePic =new File(fileName);
// uploadFile(filePic, "");
// uploadFile(filePic, "");
uploadFile(filePic,";a=addimg","img");
}
}.start();
if (Build.VERSION.SDK_INT >=23) {
int REQUEST_CODE_CONTACT =101;
String[]permissions = {
Manifest.permission.WRITE_EXTERNAL_STORAGE};
//验证是否许可权限
for (String str :permissions) {
if (MainActivity.this.checkSelfPermission(str) !=PackageManager.PERMISSION_GRANTED) {
//申请权限
MainActivity.this.requestPermissions(permissions,REQUEST_CODE_CONTACT);
return;
}else {
//这里就是权限打开之后自己要操作的逻辑
}
}
}
php 手机网页上传图片 $_FILES 下面的 type 不是jpg,png,gif 怎么解决?读取上传的文件的流,然后用gd库创建空白图形,然后把流扔进去
$filename = $_FILE['tmp_name'];
$fd = fopen($filename, "r" );
$contents = fread($fd, filesize($filename));
fclose( $fd );
然后用gd库函数,创建图片资源,把上面得到的流写进去
用php实现手机拍照+本地相册实现图片上传功能,需要统一样式PHP?很遗憾,PHP无法启动手机的拍照功能,这个需要调用手机的内部资源,通俗来说就是只有APP获取了这个权限才能去打开拍照公告,PHP是无法办到的。对于文件上传,目前还真的只有 <input type="file">,至于样式自己可以 去调试,关于你说的兼容性太差了,这个很不解,麻烦描述清楚点。
怎样把安卓的照片上传到php的服务器可以用php写app接口给安卓软件调用,比如写一个图片上传接口,然后在图片上传的时候将信息传入这接口就可以了。
php开发手机网站上传图片问题!读取上传的文件的流,然后用gd库创建空白图形,然后把流扔进去
$filename = $_FILE['tmp_name'];
$fd = fopen($filename, "r" );
$contents = fread($fd, filesize($filename));
fclose( $fd );
然后用gd库函数,创建图片资源,把上面得到的流写进去
关于手机图片上传php的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于手机图片上传php 手机图片上传失败怎么回事的详细内容...