• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

android 上传图片到php服务器

php 搞代码 3年前 (2022-01-23) 24次浏览 已收录 0个评论

android代码

public class EX08_11 extends Activity
{
/* 变量声明
* newName:上传后在服务器上的文件名称
* uploadFile:要上传的本文来源gao.dai.ma.com搞@代*码#网搞代gaodaima码文件路径
* actionUrl:服务器对应的程序路径 */
// private String newName=”345444.jpg”;
private String uploadFile=”/sdcard/345444.jpg”;
private String acti//*********/upload.php”;
private TextView mText1;
private TextView mText2;
private Button mButton;

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

mText1 = (TextView) findViewById(R.id.myText2);
mText1.setText(“文件路径:\n”+uploadFile);

mText2 = (TextView) findViewById(R.id.myText3);
mText2.setText(“上传网址:\n”+actionUrl);
/* 设定mButton的onClick事件处理 */
mButton = (Button) findViewById(R.id.myButton);
mButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
uploadFile();
}
});
}

/* 上传文件吹Server的method */
private void uploadFile()
{
// String end = “\r\n”;
// String twoHyphens = “–“;
String boundary = “*****”;
try
{
URL url =new URL(actionUrl);
HttpURLConnection con=(HttpURLConnection)url.openConnection();
/* 允许Input、Output,不使用Cache */
// con.setReadTimeout(5 * 1000);
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
/* 设定传送的method=POST */
con.setRequestMethod(“POST”);
/* setRequestProperty */
con.setRequestProperty(“Connection”, “Keep-Alive”);
con.setRequestProperty(“Charset”, “UTF-8”);
con.setRequestProperty(“enctype”,
“multipart/form-data;boundary=”+boundary);
/* 设定DataOutputStream */
DataOutputStream ds =
new DataOutputStream(con.getOutputStream());
/*ds.writeBytes(twoHyphens + boundary + end);
ds.writeBytes(“Content-Disposition: form-data; ” +
“name=\”file1\”;filename=\”” +
newName +”\”” + end);

ds.writeBytes(end); */

/* 取得文件的FileInputStream */
FileInputStream fStream = new FileInputStream(uploadFile);
/* 设定每次写入1024bytes */
int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];

int length = -1;
/* 从文件读取数据到缓冲区 */
while((length = fStream.read(buffer)) != -1)
{
/* 将数据写入DataOutputStream中 */
ds.write(buffer, 0, length);
}
// ds.writeBytes(end);
// ds.writeBytes(twoHyphens + boundary + twoHyphens + end);

/* close streams */
fStream.close();
ds.flush();

/* 取得Response内容 */
InputStream is = con.getInputStream();
int ch;
StringBuffer b =new StringBuffer();
while( ( ch = is.read() ) != -1 )
{
b.append( (char)ch );
}
/* 将Response显示于Dialog */
showDialog(b.toString().trim());
/* 关闭DataOutputStream */
ds.close();
}
catch(Exception e)
{
showDialog(“”+e);
}
}

/* 显示Dialog的method */
private void showDialog(String mess)
{
new AlertDialog.Builder(EX08_11.this).setTitle(“Message”)
.setMessage(mess)
.setNegativeButton(“确定”,new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
}
})
.show();
}
}

php代码

<?php
$data = file_get_contents(‘php://input’);
$time = date(“YmdHis”);
$rand = rand(0,100);
$filename = $_SERVER[‘DOCUMENT_ROOT’].’/image/’.$time.$rand.’.jpg’;
while(file_exists($filename))
{
$filename = $_SERVER[‘DOCUMENT_ROOT’].’/image/’.$time.rand(0,100).’.jpg’;
}

echo $filename;
$handle = fopen($filename, ‘w’);
if ($handle)
{

fwrite($handle,$data);
fclose($handle);

echo “success”;
}
?>

以上就介绍了android 上传图片到php服务器,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:android 上传图片到php服务器

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址