Ничего не делает при попытке войти в систему

Я создал веб-сайт с использованием PHP с системой входа в систему. Я создал базу данных и систему входа в систему, и она работает, но теперь я работаю над приложением Android, для которого требуется система входа в систему, подключенная к той же базе данных. Когда я нажимаю кнопку входа в систему, приложение перестает работать и переводит меня в меню телефона.

Вот файл входа в PHP с моего сайта

if (isset($_POST['login-submit']))
{
    require 'dbh-inc.php';

    $mailuid = $_POST['user_name'];
    $password = $_POST['password'];

    if (empty($mailuid) || empty($password)){

        header("Location: ../index.php?emptyFields");
        exit();
    } else{
        $sql = "SELECT * FROM users WHERE uidUsers=?;";
        $stmt = mysqli_stmt_init($conn);
        if (!mysqli_stmt_prepare($stmt, $sql)){
            header("Location: ../index.php?sqlError");
        exit();
        } else {
            mysqli_stmt_bind_param($stmt, "s", $mailuid);
            mysqli_stmt_execute($stmt);
            $result = mysqli_stmt_get_result($stmt);
            if ($row = mysqli_fetch_assoc($result)){
                 $pwdCheck = password_verify($password, $row['pwdUsers']);
                 if ($pwdCheck == false){
                    header("Location: ../index.php?wrongPassword");
        exit();
                 } else if ($pwdCheck == true){
                       session_start();
                       $_SESSION['userId'] = $row['idUsers'];
                       $_SESSION['userUid'] = $row['uidUsers'];
                       $_SESSION['userFirst'] = $row['firstUsers'];
                       $_SESSION['userLast'] = $row['lastUsers'];
                        $_SESSION['userEmail'] = $row['emailUsers'];
                        $_SESSION['userPoints'] = $row['userPoints'];

                          header("Location: ../index.php?LoginSucces");
                            exit();

                 }else {
                    header("Location: ../index.php?wrongPassword");
        exit();
                 }
            }
            else {
                header("Location: ../index.php?noUser");
        exit();
            }
        }

На сайте все работает без проблем. Итак, я открываю свой Java-класс для входа и создаю OnClickListener для моей кнопки входа в систему. в моем случае я написал

String username = uid.getText().toString();
        String password = pwd.getText().toString();
        String type = "login";
        BackgroundWorker backgroundWorker = new BackgroundWorker(this);
        backgroundWorker.execute(type,username,password);

Я также создал класс BackgroundWorker:

package com.example.onaca.quiz;

import android.app.AlertDialog;
import android.content.Context;
import android.os.AsyncTask;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;

public class BackgroundWorker extends AsyncTask<String, Void, String> {
    AlertDialog alertDialog;
    Context context;
    BackgroundWorker(Context ctx) {
        context = ctx;
    }
    @Override
    protected String doInBackground(String... params) {
        String type = params[0];
        String login_url = "http://quizonwheels.com/includes/login-inc.php";
        if (type.equals("login"))
        {
            try {
                String user_name = params[1];
                String password = params[2];
                URL url = new URL(login_url);
                HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
                httpURLConnection.setRequestMethod("POST");
                httpURLConnection.setDoOutput(true);
                httpURLConnection.setDoInput(true);
                OutputStream outputStream = httpURLConnection.getOutputStream();
                BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream,"UTF-8"));
                String post_data = URLEncoder.encode("user_name","UTF-8")+" = "+URLEncoder.encode(user_name,"UTF-8")+"&"+URLEncoder.encode("password","UTF-8")+" = "+URLEncoder.encode(password,"UTF-8");
                bufferedWriter.write(post_data);
                bufferedWriter.flush();
                bufferedWriter.close();
                outputStream.close();
                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream,"iso-8859-1"));
                String result = "";
                String line = " ";
                while((line = bufferedReader.readLine())!= null){
                    result += line;
                }
                bufferedReader.close();
                inputStream.close();
                httpURLConnection.disconnect();
                return  result;
            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return null;
    }

    @Override
    protected void onPreExecute() {
        alertDialog = new AlertDialog.Builder(context).create();
        alertDialog.setTitle("Login Status");
    }

    @Override
    protected void onPostExecute(String result) {
        alertDialog.setMessage(result);
        alertDialog.show();

    }

    @Override
    protected void onProgressUpdate(Void... values) {
        super.onProgressUpdate(values);
    }


}

Что я должен сделать? Я новичок в программировании на Java, мне поможет любая информация. Спасибо!

Вы можете предоставить журнал сбоев?

PushpikaWan 04.11.2018 09:28

я могу вставить запись моего эмулятора?

Calin Onaca 04.11.2018 09:38

Вам нужно открыть консоль журнала, когда ваше приложение выйдет из строя. Имеются ошибки красного цвета, и в этой консоли вызывается иерархия этой ошибки. просто скопируйте эти ошибки и поместите

PushpikaWan 04.11.2018 09:40

У меня нет ошибок, просто не работает

Calin Onaca 04.11.2018 09:43

разве ваше приложение не закрывается, когда вы нажимаете кнопку входа в систему. как вы сказали. В основном это происходит, когда появляется исключение? эти сведения об исключении есть в консоли

PushpikaWan 04.11.2018 09:45

позвольте мне проверить пожалуйста

Calin Onaca 04.11.2018 09:56

Это много ... и мне не разрешают комментировать все

Calin Onaca 04.11.2018 10:11

просто поставьте первые несколько красных строк, которые объясняют ошибку

PushpikaWan 04.11.2018 10:15

Не могли бы вы проверить logcat, он обязательно должен показать ошибку

Vasif 04.11.2018 10:44
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
9
28
0

Другие вопросы по теме