Как я могу подключить мое мобильное приложение к базе данных MySQL в домене, используя JDBC? - PullRequest
1 голос
/ 28 октября 2019

Я недавно купил домен и хостинг для godaddy.com для моего дипломного проекта под типом cpanel. Я уже загрузил свою базу данных. Однако я не могу подключить свое мобильное приложение к базе данных, используя Android Studio в качестве IDE с jdbc в качестве соединителя и nox player в качестве эмулятора.

Я уже пытался проверить имя пользователя и пароль своей базы данных.

Вот мой класс соединения '' 'открытый класс ConnClass {

String clazz="com.mysql.jdbc.Driver";
String url="jdbc:mysql://realclinic.com/dbclinic";

//Already tried the following but none of these work
//String url="realclinic.com:3306/";
//String url="xxx.xx.xx.xxx.xx/dbclinic";
//String url="jdbc:mysql://localhost/dbclinic";

//This exact IP code run fine but only when I tested it on same device(PC)
//String url="jdbc:mysql://123.456.7.8/dbclinic";

String dbusername="clinic";
String dbpassword="951736482";

@SuppressLint("NewApi")
public Connection CONN()
{
    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy);
    Connection conn=null;
    String ConnURL=null;
    try{
        Class.forName(clazz);
        conn= DriverManager.getConnection(url,dbusername,dbpassword);
        //conn=DriverManager.getConnection(ConnURL);
    }
    catch (SQLException se) {
        Log.e("ERRO", se.getMessage());
    } catch (ClassNotFoundException e) {
        Log.e("ERRO", e.getMessage());
    } catch (Exception e) {
        Log.e("ERRO", e.getMessage());
    }
    return conn;

' ''

А вот мой основной код активности

открытый класс Login extends AppCompatActivity {

ConnClass cc;
DataClass dc=new DataClass();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.login);

    cc = new ConnClass();

    btnlogin.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Dologin dologin = new Dologin();
            dologin.execute();
        }
    });
}

    private class Dologin extends AsyncTask<String, String, String>
    {
        String user=txtuser.getText().toString();
        String pass=txtpass.getText().toString();
        String msger="Oops";
        Boolean isSuccess=false;

        String dataReader_user,dataReader_pass;
        @Override
        protected String doInBackground(String... strings) {
            if(user.equals("") || pass.equals(""))
            {
                msger="Please fill up";
            }
            else
            {
                try{
                    Connection con=cc.CONN();
                    if(con==null)
                    {
                        msger="Please Check your Internet Connection";
                    }
                    else
                    {
                        String query="select * from parents_accts where Username='"+user+"' and Password='"+pass+"' ";
                        Statement stmt=con.createStatement();
                        ResultSet rs=stmt.executeQuery(query);

                        while(rs.next())
                        {
                            qwer=rs.getRow();
                            dataReader_user=rs.getString(1);
                            dataReader_pass=rs.getString(2);


                            if(dataReader_user.equals(user) && dataReader_pass.equals(pass))
                            {
                                isSuccess=true;
                                msger="Log in Success";
                                dc.setAcct(user,pass,dataReader_lname,dataReader_fname,dataReader_mname);
                            }
                            else
                            {
                                isSuccess=false;
                                msger="Invalid Acct";
                            }


                        }
                        rs.close();
                    }
                }
                catch (Exception ex){
                    isSuccess=false;
                    msger="Exception" + ex;
                }
            }
            return msger;


        }
        @Override
        protected void onPostExecute(String a){

            Toast.makeText(getBaseContext(),""+msger+String.valueOf(qwer),Toast.LENGTH_SHORT).show();

            if(isSuccess==true)
            {

                Intent startIntent=new Intent(Login.this, PatientLists.class);

                startActivity(startIntent);
                //finish();
            }


        }
    }

'' '

После успешного подключения программа должна перейти на другую страницу, но вместо этого выдается сообщение «Пожалуйста, проверьте ваше подключение к Интернету».

Я действительно в растерянности, может кто-нибудь сказать мне, какой правильный синтаксис для моей строки соединения здесь? Заранее спасибо

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