Почему скрипт PHP возвращает пустую строку для android на сервере? - PullRequest
0 голосов
/ 27 апреля 2020

Я создал приложение android с PHP back-end, которое работает прямо на localhost. но, когда я загружаю его на сервер, вместо пустой строки возвращается, например, пустая строка. Я положил все разрешение на 777, но оно не работает.

один из сценариев PHP:

<?php  

    if($_SERVER['REQUEST_METHOD']=='POST'){
        $username = $_POST['username'];
        $password = $_POST['password'];
        require_once('dbConnect.php');
        $sql = "SELECT * FROM coachtbl WHERE kodemelli =
        '$username'
        AND password='$password'";
        $r = @mysqli_query($con,$sql);
        $num_rows = mysqli_num_rows($r);
         if($num_rows>0){
            echo ("ok");}
         else{
             echo (mysqli_error($con));
         }
        @mysqli_close($con); 
    }

 ?>

А это мой android код:

 StringRequest request = new StringRequest(Request.Method.POST, Config.login_Api, new Response.Listener<String>() {
            @Override
            public void onResponse(String s) {
                loading.dismiss();
                Toast.makeText(LoginActivity.this, s, Toast.LENGTH_SHORT).show();
                if (s.trim().equals("ok")) {
                    //Toast.makeText(LoginActivity.this, "success", Toast.LENGTH_SHORT).show();
                    startActivity(new Intent(LoginActivity.this , MainPage.class));
                    kodemelli=kode.getText().toString().trim();
                } else {
                    Toast.makeText(LoginActivity.this, "username or password is wrong", Toast.LENGTH_SHORT).show();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError volleyError) {
                Toast.makeText(LoginActivity.this, volleyError.toString(), Toast.LENGTH_SHORT).show();
                loading.dismiss();
            }
        }) {
            @Override
            protected Map<String, String> getParams() {
                Map<String, String> params = new HashMap<String, String>();
                params.put("username", kode.getText().toString().trim());
                params.put("password", pass.getText().toString().trim());
                return params;
            }

        };
        RequestQueue requestQueue =
                Volley.newRequestQueue(LoginActivity.this);
        requestQueue.add(request);

Спасибо за любую помощь

Ответы [ 2 ]

0 голосов
/ 27 апреля 2020

Возможно Ваш URL Config.login_Api неверные настройки. Проверьте наличие пропусков обратной косой черты '/' в конце URL-адреса: например, 'www.hello.com/'

Другая возможная проблема заключается в неправильной настройке вашего PHP веб-сервера. Проверьте настройки .htaccess или пропустили PHP Deamon работает на удаленном веб-сервере.

0 голосов
/ 27 апреля 2020

Заменить POST на GET

Вы выполняете неправильный запрос метода HTTP.

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