0

AndroidからPHPにJSONとしていくつかのSTRING変数を送信しようとしています。インターネット上のガイドの 1 つを使用してこれを達成しましたが、残念ながら機能せず、StackOverflow の他の同様の質問を使用しても解決できません。

これが私のAndroidコードです:-

JSONObject jsonObject= new JSONObject();
JSONArray jsonArray=new JSONArray();

public class sendData extends AsyncTask<String, String, Void> {

    @Override
    protected Void doInBackground(String... params) {

        HttpClient httpClient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost("http://bdp.site40.net/sendRegData.php");

        try {
            HttpEntity httpEntity = new StringEntity(jsonArray.toString());
            httpPost.setEntity(httpEntity);
            httpClient.execute(httpPost);
        }
        catch (IOException e) {
        }

        return null;
    }
}

public void onClickSubmitButton(View view) throws JSONException {

    jsonObject.put("name",name);
    jsonObject.put("blood",blood);
    jsonObject.put("cell",cell);
    jsonObject.put("email", email);
    jsonObject.put("address",address);
    jsonObject.put("country",country);
    jsonObject.put("state",state);
    jsonObject.put("city",city);

    jsonArray.put(jsonObject);

    new sendData().execute();

}

そして、ここに私のPHPコードがあります:-

<?php 

    $json = file_get_contents("php://input");
    $data = json_decode($json);
    $name = $data[0]->name;
    $blood = $data[0]->blood;
    $cell = $data[0]->cell;
    $email = $data[0]->email;
    $address = $data[0]->address;
    $country = $data[0]->country;
    $state = $data[0]->state;
    $city = $data[0]->city;
    $con = mysql_connect("","","") or die(mysqli_connect_error());
    $db = mysql_select_db("",$con) or die(mysqli_connect_error());
    mysql_query("INSERT INTO Donors(Name,Blood,Mobile,E-Mail,Address,Country,State,City)VALUES('$name','$blood','$cell','$email','$address','$country','$state','$city')");

?>

少し実験した後、問題がPHPスクリプトにデータを送信する場所および/またはPHPスクリプトによってデータが受信される方法に問題があるという事実に絞り込みました。誰でも問題を探して修正できますか?ありがとう!

注意点:

  1. プライバシーのためにMySQLのユーザー名、パスワード、データベース名、およびホストを削除しました(明らかに)。
  2. 8 つの変数はすべて文字列形式です。
4

1 に答える 1