如何从phonegap Android应用程序访问SQL服务器数据库?

时间:2013-09-28 12:49:47

标签: android sql-server json eclipse cordova

我对使用Android Phonegap应用程序连接SQL Server数据库的方式感到困惑。我使用PHP代码来查询数据。

这可能吗?

我的应用未运行。这是空白的。任何人都可以给我一个明确的例子或示例代码来解决这个问题。

1 个答案:

答案 0 :(得分:1)

使用PHP将android连接到服务器是最好的方法......

首先使用名称值对

        public void registerUser(String email, String password, String mobile) {
    // Building Parameters

           List<NameValuePair> params = new ArrayList<NameValuePair>();

            params.add(new BasicNameValuePair("tag", register_tag));
    params.add(new BasicNameValuePair("keyemail", email));
    params.add(new BasicNameValuePair("keypassword", password));
    params.add(new BasicNameValuePair("keymobile", mobile));

    // getting JSON Object


    JsonParser.makeHttpRequest(registerURL,params);


}

使用JSON发送数据

      public JSONObject makeHttpRequest(String url,
        List<NameValuePair> params) {


    // Making HTTP request
    try {




            // request method is POST
            // defaultHttpClient
            DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost httpPost = new HttpPost(url);
            httpPost.setEntity(new UrlEncodedFormEntity(params));

            HttpResponse httpResponse = httpClient.execute(httpPost);
            HttpEntity httpEntity = httpResponse.getEntity();
            is = httpEntity.getContent();





    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
      }

    try {

        BufferedReader reader = new BufferedReader(new InputStreamReader(
                is, "iso-8859-1"), 8);
        StringBuilder sb = new StringBuilder();
        String line = null;
        while ((line = reader.readLine()) != null) {
            sb.append(line + "\n");
        }
        is.close();
        json = sb.toString();


    } catch (Exception e) {
        Log.e("Buffer Error", "Error converting result " + e.toString());
    }

    // try parse the string to a JSON object
    try {

        jObj = new JSONObject(json);
        Log.d("Parser", "IN try parse the string to a JSON object");
    } catch (JSONException e) {
        Log.e("JSON Parser", "Error parsing data " + e.toString());
    }

    // return JSON String
    return jObj;

}

PHP代码将获得此值并进一步使用          

  // include db connect class
  require_once dirname(__FILE__).'/db_connect.php';

  // connecting to db
  $db = new DB_CONNECT();

  $response = array();



  $email = $_POST['keyemail'];
  $password= $_POST['keypassword'];
 $phone=$_POST['keymobile'];
 $tag=$_POST['tag'];



$result=mysql_query("INSERT INTO TableName (register_email,password,mobile)    VALUES('$email','$password', '$phone')");

if ($result) {
    // successfully updated
    $response["success"] = 1;
    $response["message"] = "Data Inserted Successfully.";

    // echoing JSON response
    echo json_encode($response);
} else {
    $response["error_msg"]="Error In Insertion";
}

&GT?;