Home >Backend Development >PHP Tutorial >android upload pictures to php server

android upload pictures to php server

WBOY
WBOYOriginal
2016-08-08 09:22:361287browse

android code

public class EX08_11 extends Activity
{
/* Variable declaration
* newName: the file name on the server after uploading
* uploadFile: the file path to be uploaded
* actionUrl: the program path corresponding to the server*/
// 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("File path: n"+uploadFile);
mText2 = (TextView) findViewById(R.id.myText3);
mText2.setText("Upload URL: n"+ actionUrl);
/* Set mButton’s onClick event handling*/ )
                                                        uploadFile(); String twoHyphens = "--";
String boundary = "*****";
try
{
URL url =new URL(actionUrl);
HttpURLConnection con=(HttpURLConnection)url.openConnection();
/* Allow Input, Output, do not use Cache */
// con.setReadTimeout(5 * 1000);
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
/* Settings Transmitted method=POST */
  con.setRequestMethod("POST");
  /* setRequestProperty */
  con.setRequestProperty("Connection", "Keep-Alive");
  con.setRequestProperty("Charset", "UTF -8");
con.setRequestProperty("enctype",
"multipart/form-data;boundary="+boundary);
/* Set DataOutputStream */
DataOutputStream ds =
new Data OutputStream(con.getOutputStream() ; +"" " + end);


ds.writeBytes(end); */

/* Get the FileInputStream of the file */
FileInputStream fStream = new FileInputStream(uploadFile);
/* Set each write to 1024 bytes */
int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];

int length = -1;
/* Read data from file to buffer*/
while((length = fStream.read(buffer) ) != -1)
                                                                                                       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代码

$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教程有兴趣的朋友有所帮助。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:php oci8 trialNext article:php oci8 trial