douxiza9868 2015-01-16 12:08
浏览 87

Android:保证将数据发送到服务器

I have code to post data to a server, but sometimes, if the network is slow, the data does not get through. My app is somewhat similar to a messenger program, and I want to post and store every message in a MySQL database. My client-side code is shown below:

  try{ 

                     // URLEncode user defined data

                       String loginValue    = URLEncoder.encode(login.getText().toString(), "UTF-8");
                       String fnameValue  = URLEncoder.encode(fname.getText().toString(), "UTF-8");
                       String emailValue   = URLEncoder.encode(email.getText().toString(), "UTF-8");
                       String passValue    = URLEncoder.encode(pass.getText().toString(), "UTF-8");

                    // Create http cliient object to send request to server

                       HttpClient Client = new DefaultHttpClient();

                    // Create URL string

                     String URL = "http://****/httpget.php?user="+loginValue+"&name="+fnameValue+"&email="+emailValue+"&pass="+passValue;

                    //Log.i("httpget", URL);

                   try
                    {
                                  String SetServerString = "";

                                // Create Request to server and get response

                                  HttpPost httppost = new HttpPost(URL);
                                 ResponseHandler<String> responseHandler = new BasicResponseHandler();
                                 SetServerString = Client.execute(httppost, responseHandler);

                                  // Show response on activity 

                                 content.setText(SetServerString);
                     }
                   catch(Exception ex)
                      {
                             content.setText("Fail!");
                       }
                }
              catch(UnsupportedEncodingException ex)
               {
                       content.setText("Fail");
                }     

... and here is my server-side PHP code:

<?php

         $name  = urldecode($_POST['name']);
         $user     = urldecode($_POST['user']);
         $email   = urldecode($_POST['email']);
         $pass    = urldecode($_POST['pass']);

        print " ==== GET REQUEST DATA =====
                 Name: $name 
                 Email: $email
                 User: $user 
                 Pass: $pass";

?>
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 模型在y分布之外的数据上预测能力不好如何解决
    • ¥15 processing提取音乐节奏
    • ¥15 gg加速器加速游戏时,提示不是x86架构
    • ¥15 python按要求编写程序
    • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入
    • ¥20 XP系统在重新启动后进不去桌面,一直黑屏。
    • ¥15 opencv图像处理,需要四个处理结果图
    • ¥15 无线移动边缘计算系统中的系统模型
    • ¥15 深度学习中的画图问题
    • ¥15 java报错:使用mybatis plus查询一个只返回一条数据的sql,却报错返回了1000多条