使用hostinger

时间:2015-10-29 06:58:29

标签: php android mysql login fatal-error

嗨iam郁闷地说,我试图将应用程序连接到mysql的登录代码与wampserver一起工作正常。 但是在上线的时候,Hostliner iam在postexecute函数上遇到了致命的异常。

请帮助我无法在我的应用中转发。

我粘贴我的日志和后台任务java代码。



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

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;

/**
 * Created by prabeesh on 7/14/2015.
 */
public class BackgroundTask extends AsyncTask<String,Void,String> {
  AlertDialog alertDialog;
    Context ctx;
    BackgroundTask(Context ctx)
    {
      this.ctx =ctx;
    }
    @Override
    protected void onPreExecute() {
    alertDialog = new AlertDialog.Builder(ctx).create();
        alertDialog.setTitle("Login Information....");
    }

    @Override
    protected String doInBackground(String... params) {
        String reg_url = "http://kamster.esy.es/register.php";
        String login_url = "http://kamster.esy.es/login.php";
        String method = params[0];
        if (method.equals("register")) {
            String name = params[1];
            String user_name = params[2];
            String user_pass = params[3];
            try {
                URL url = new URL(reg_url);
                HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
                httpURLConnection.setRequestMethod("POST");
                httpURLConnection.setDoOutput(true);

                //httpURLConnection.setDoInput(true);
                OutputStream OS = httpURLConnection.getOutputStream();
                BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(OS, "UTF-8"));
                String data = URLEncoder.encode("user", "UTF-8") + "=" + URLEncoder.encode(name, "UTF-8") + "&" +
                        URLEncoder.encode("user_name", "UTF-8") + "=" + URLEncoder.encode(user_name, "UTF-8") + "&" +
                        URLEncoder.encode("user_pass", "UTF-8") + "=" + URLEncoder.encode(user_pass, "UTF-8");
                bufferedWriter.write(data);
                bufferedWriter.flush();
                bufferedWriter.close();
                OS.close();
               InputStream IS = httpURLConnection.getInputStream();
               IS.close();
                //httpURLConnection.connect();
                httpURLConnection.disconnect();
                return "Registration Success...";
            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

        else if(method.equals("login"))
        {
           String login_name = params[1];
            String login_pass = params[2];
            try {
                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 data = URLEncoder.encode("login_name","UTF-8")+"="+URLEncoder.encode(login_name,"UTF-8")+"&"+
                    URLEncoder.encode("login_pass","UTF-8")+"="+URLEncoder.encode(login_pass,"UTF-8");
                bufferedWriter.write(data);
                bufferedWriter.flush();
                bufferedWriter.close();
                outputStream.close();

                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream,"iso-8859-1"));
                String response = "";
                String line  = "";
                while ((line = bufferedReader.readLine())!=null)
                {
                    response+= line;
                }
                bufferedReader.close();
                inputStream.close();
                httpURLConnection.disconnect();
                return response;


            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }


        }
        return null;
    }

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

    @Override
    protected void onPostExecute(String result) {
      if(result.equals("Registration Success..."))
      {
          Toast.makeText(ctx, result, Toast.LENGTH_LONG).show();
      }
        else
      {
        alertDialog.setMessage(result);
          alertDialog.show();
      }

    }
}
&#13;
&#13;
&#13;

记录

10-29 12:29:22.941  12011-12028/com.easyway2in.mysqldbdemo W/System.err﹕ java.io.EOFException

10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:95) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okhttp.internal.http.HttpConnection.readResponse(HttpConnection.java:179) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okhttp.internal.http.HttpTransport.readResponseHeaders(HttpTransport.java:101) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:628) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:388) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:332) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:199) 10-29 12:29:22.942 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.easyway2in.mysqldbdemo.BackgroundTask.doInBackground(BackgroundTask.java:92) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at com.easyway2in.mysqldbdemo.BackgroundTask.doInBackground(BackgroundTask.java:23) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at android.os.AsyncTask $ 2.call(AsyncTask.java:292) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at java.util.concurrent.FutureTask.run(FutureTask.java:237) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at android.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask.java:231) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:587) 10-29 12:29:22.943 12011-12028 / com.easyway2in.mysqldbdemo W / System.err:at java.lang.Thread.run(Thread.java:818) 10-29 12:29:22.945 12011-12011 / com.easyway2in.mysqldbdemo D / AndroidRuntime:关闭VM     ---------崩溃的开始 10-29 12:29:22.945 12011-12011 / com.easyway2in.mysqldbdemo E / AndroidRuntime:FATAL EXCEPTION:main     过程:com.easyway2in.mysqldbdemo,PID:12011     java.lang.NullPointerException:尝试调用虚方法&#39; boolean java.lang.String.equals(java.lang.Object)&#39;在null对象引用上             在com.easyway2in.mysqldbdemo.BackgroundTask.onPostExecute(BackgroundTask.java:124)             在com.easyway2in.mysqldbdemo.BackgroundTask.onPostExecute(BackgroundTask.java:23)             在android.os.AsyncTask.finish(AsyncTask.java:636)             在android.os.AsyncTask.access $ 500(AsyncTask.java:177)             在android.os.AsyncTask $ InternalHandler.handleMessage(AsyncTask.java:653)             在android.os.Handler.dispatchMessage(Handler.java:102)             在android.os.Looper.loop(Looper.java:135)             在android.app.ActivityThread.main(ActivityThread.java:5257)             at java.lang.reflect.Method.invoke(Native Method)             在java.lang.reflect.Method.invoke(Method.java:372)             在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:903)             在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)     ---------系统的开头

感谢

0 个答案:

没有答案