не могу соединить мое приложение для Android с моей удаленной базой данных - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь, чтобы этот код отображал некоторые данные, загруженные из моей удаленной базы данных на моем ноутбуке (сервер MySQL) с использованием android studio v3.5.1, но он не показывает никаких результатов или ошибок. Кто-нибудь может сказать мне, что делать, пожалуйста?

Это файл MainActivity.java :

public class MainActivity extends AppCompatActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new Connection().execute();
    }


    class Connection extends AsyncTask<String,String,String> {

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

            String result = "";
            String host = "http://10.0.2.2/cars/cars.php";

            try {
                HttpClient client = new DefaultHttpClient();
                HttpGet request = new HttpGet();
                request.setURI(new URI(host));
                HttpResponse response = client.execute(request);
                BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
                StringBuffer stringBuffer = new StringBuffer("");
                String line = "";
                while ((line = reader.readLine()) != null)
                {
                    stringBuffer.append(line);
                    break;
                }
                reader.close();
                result = stringBuffer.toString();

            }
            catch (Exception e)
            {
                return new String("The exception is : " + e.getMessage());
            }
            return result;
        }

        @Override
        protected void onPostExecute(String result)
        {
            Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();
        }
    }
}

Это cars.php file:

<?php

$host = 'localhost';
$user = 'root';
$pwd = '';
$db = 'store';

$conn = mysqli_connect($host, $user, $pwd, $db);

if(!$conn){
    die("ERROR in connection : " .mysqli_connect_error());
}
$response = array();

$sql_query = "select * from cars";
$result = mysqli_query($conn, $sql_query);

if(mysqli_num_rows($result) > 0){
    $response['success']=1;
    $cars = array();
    while($row = mysqli_fetch_assoc($result)){
        #code ...
        array_push($cars, $row);
    }
    $response['cars']=$cars;
 }
else{
    $response['success'] = 0;
    $response['message'] = 'No data';
}
echo json_encode($response);
mysqli_close($conn);
?>

Очевидно, это работает, когда я запускаю его через USB-кабель, но не показывает результата или ошибки. МОЖЕТ кто-нибудь помочь мне, пожалуйста?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...