【问题标题】:How to get data from mysql php to android [closed]如何从mysql php获取数据到android [关闭]
【发布时间】:2012-12-15 01:05:01
【问题描述】:

我是 android 开发新手,我在 android 上开发了一个具有 3 个活动的应用程序,除此之外,我还开发了一个 PHP 网站,该网站在 MySQL 上具有数据库。我想在android和PHP之间建立联系。我阅读了很多教程并根据使用 JSON Parser 进行连接,但我不工作。可以使用“Web Services”将客户端连接到服务器吗?现在我的项目的要求是我有一种客户注册表格,我想从中获取用户输入的所有数据,并保存在 android 的数据库中。我该怎么做?是否有可能在我的 android 应用程序中我在其他活动中输入数据并将其保存在 MySql 数据库中。请提供帮助,因为我尝试了许多连接和获取数据的方法,但没有成功请指导从我的 PHP 应用程序中检索任务详细信息的可能方法。

【问题讨论】:

  • 是的,可以使用网络服务。事实上,这是唯一可行的方法。不,我们不为你做。
  • 我只想建议我该怎么做?你可以给我一个例子或教程。这对我会有帮助。我只需要指导而不是确切的解决方案。感谢您的回复

标签: java php javascript android mysql


【解决方案1】:

这样做。

也许对你有帮助。

title = spinnerTitle.getSelectedItem().toString();
firstName = editTextFirstName.getText().toString();
lastName = editTextLastName.getText().toString();
address1 = editTextAddress1.getText().toString();
adddress2 = editTextAddress2.getText().toString();
city = editTextCity.getText().toString();
county = editTextCounty.getText().toString();
postCode = editTextPostCode.getText().toString();
country = spinnerCountry.getSelectedItem().toString();
dayPhone = editTextDayPhone.getText().toString();
evePhone = editTextEvePhone.getText().toString();

String xml = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>"
            + "<users><Title>"+title+"</Title>"
            + "<FirstName>"+firstName+"</FirstName>"
            + "<LastName>"+lastName+"</LastName>"
            + "<Address1>"+address1+"</Address1>"
            + "<Address2>"+adddress2+"</Address2>"
            + "<LoginID>"+userId+"</LoginID>"
            + "<Password>"+password+"</Password>"
            + "<County>"+county+"</County>"
            + "<City>"+city+"</City>"
            + "<Country>"+country+"</Country>"
            + "<PostCode>"+postCode+"</PostCode>"
            + "<Email>"+email+"</Email>"
            + "<DayPhone>"+dayPhone+"</DayPhone>"
            + "<EvePhone>"+evePhone+"</EvePhone>" + "</users>";

            serverCall(xml);


private void serverCall(final String xml )
{

 ConnectivityManager conMan = ( ConnectivityManager ) getSystemService( Context.CONNECTIVITY_SERVICE );
 if( conMan.getActiveNetworkInfo() != null && conMan.getActiveNetworkInfo().isConnected() )
  {

     result = new Connection().getResponse("http://localhost/registration.php" , xml);
     if(result.equals("yes") {
       //registration done
     } else {
       //failed
     }
   }
}

Connection.java

public String getResponse(String connUrl, String xml) {
    DefaultHttpClient httpClient = null;
    try {
        MultipartEntity mp = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
        HttpPost method = new HttpPost(connUrl);
        method.setEntity(mp);
        mp.addPart("xml_request", new StringBody(xml));

        httpClient = new DefaultHttpClient();
        HttpResponse response = httpClient.execute(method);

        if(response.getStatusLine().getStatusCode() == 200){
            ByteArrayOutputStream outstream = new ByteArrayOutputStream();
            response.getEntity().writeTo(outstream);
            return outstream.toString();
        }
    }
    catch(Exception e) {
        Log.v("APP", "Exception while create connection for getResponse from server with: " + e.getMessage());
    }
    finally {
        httpClient.getConnectionManager().shutdown();
    }
    return "";
}

【讨论】:

  • 是的,它很有帮助。谢谢你
【解决方案2】:

您可以为您的Web应用程序创建一个RESTFUL API服务,解析json、xml、csv和许多其他类型,然后您可以在android中调用它。

从android调用服务的方法之一是android query

【讨论】:

  • 好的,我试试,感谢您提供如此有用的指导:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-22
  • 2018-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-16
相关资源
最近更新 更多