Results 1 to 2 of 2
  1. #1
    Member
    Join Date
    Feb 2014
    Posts
    2

    Device(s)
    galaxy note 2

    Question android connection with php and mysql how to fixx the errors?

    creating login activity that need connection between android and php mysql using json and asynctask but the problem is that when i try to use this application the logCat display and error taht say :

    02-07 10:30:50.466: W/EGL_genymotion(3768): eglSurfaceAttrib not implemented
    02-07 10:30:57.873: W/EGL_genymotion(3768): eglSurfaceAttrib not implemented
    02-07 10:30:58.329: W/INbUFFERED Reader(3768): before the buffered reader beguin
    02-07 10:30:58.337: W/INbUFFERED Reader(3768): before the Parsing beguin
    02-07 10:30:58.337: E/JSON Parser(3768): Error parsing data org.json.JSONException: Value <br of type java.lang.String cannot be converted to JSONObject
    02-07 10:30:58.337: E/JsonObject(3768): {"message":"No User found","success":0}

    this is the java code:

    AndroidPHPConnectionDemo.java

    ============================
    Code:
    package pack.coderzheaven;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.message.BasicNameValuePair;
    import org.json.JSONArray;
    import org.json.JSONException;
    import org.json.JSONObject;
    
    import android.app.Activity;
    import android.app.ProgressDialog;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class AndroidPHPConnectionDemo extends Activity {
    	Button b;
    	EditText et, pass;
    	String Username, Password;
    	TextView tv;
    	HttpPost httppost;
    	StringBuffer buffer;
    	HttpResponse response;
    	HttpClient httpclient;
    	List<NameValuePair> nameValuePairs;
    
    	String pid;
    
    	// Progress Dialog
    	private ProgressDialog pDialog;
    
    	// JSON parser class
    	JSONParser jsonParser = new JSONParser();
    
    	// single person url
    	// ******************************************************************
    	// the localhost in the google android emulator = 10.0.2.2
    	// the localhost in the genymotion emulator = 10.0.3.2
    	// ******************************************************************
    	private static final String url_check_login = "http://10.0.3.2/check.php";
    
    	// JSON Node names
    	private static final String TAG_SUCCESS = "success";
    	private static final String TAG_PERSON = "person";
    	private static final String TAG_PID = "pid";
    	private static final String TAG_NAME = "username";
    	private static final String TAG_pass = "password";
    
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.main);
    
    		b = (Button) findViewById(R.id.Button01);
    		et = (EditText) findViewById(R.id.username);
    		pass = (EditText) findViewById(R.id.password);
    		tv = (TextView) findViewById(R.id.tv);
    
    		b.setOnClickListener(new OnClickListener() {
    			@Override
    			public void onClick(View v) {
    
    				// Getting complete person details in background thread
    				new CheckLogin().execute();
    
    			}
    		});
    	}
    
    	/**
    	 * Background Async Task to Get complete person details
    	 * */
    	class CheckLogin extends AsyncTask<String, String, String> {
    
    		JSONArray productObj;
    
    		/**
    		 * Before starting background thread Show Progress Dialog
    		 * */
    		@Override
    		protected void onPreExecute() {
    			super.onPreExecute();
    			pDialog = new ProgressDialog(AndroidPHPConnectionDemo.this);
    			pDialog.setMessage("Loading person details. Please wait...");
    			pDialog.setIndeterminate(false);
    			pDialog.setCancelable(true);
    			pDialog.show();
    		}
    
    		/**
    		 * Getting person details in background thread
    		 * */
    
    		@Override
    		protected String doInBackground(String... arg0) {
    
    			// updating UI from Background Thread
    
    			// Check for success tag
    			int success;
    			try {
    				// Building Parameters
    				List<NameValuePair> params = new ArrayList<NameValuePair>();
    				params.add(new BasicNameValuePair("pid", pid));
    
    				// getting person details by making HTTP request
    				// Note that person details url will use GET request
    				JSONObject json = jsonParser.makeHttpRequest(url_check_login,
    						"GET", params);
    
    				Log.e("JsonObject", json.toString());
    				// check your log for json response
    				// Log.d("Single person Details", json.toString());
    
    				// json success tag
    				success = json.getInt(TAG_SUCCESS);
    				if (success == 1) {
    					// successfully received person details
    					productObj = json.getJSONArray(TAG_PERSON); // JSON Array
    
    				}
    
    				else {
    					// product with pid not found
    				}
    			} catch (JSONException e) {
    				e.printStackTrace();
    			}
    
    			return null;
    		}
    
    		/**
    		 * After completing background task Dismiss the progress dialog
    		 * **/
    		protected void onPostExecute(String file_url) {
    			// dismiss the dialog once got all details
    			if (productObj != null) {
    				try {
    					// get first product object from JSON Array
    					JSONObject person = productObj.getJSONObject(0);
    
    					et.setText(person.getString(TAG_NAME));
    					pass.setText(person.getString(TAG_pass));
    
    					Log.e("success in login", "SUCCESS IN LOGIN");
    
    				} catch (Exception e) {
    
    					e.printStackTrace();
    				}
    
    			}
    
    			pDialog.dismiss();
    		}
    	}
    
    }
    JSONParser.java
    ============
    Code:
    package pack.coderzheaven;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.UnsupportedEncodingException;
    import java.util.List;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.client.utils.URLEncodedUtils;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.json.JSONException;
    import org.json.JSONObject;
    
    import android.util.Log;
    
    public class JSONParser {
    
    	static InputStream is = null;
    	static JSONObject jObj = null;
    	static String json = "";
    
    	// constructor
    	public JSONParser() {
    
    	}
    
    	// function get json from url
    	// by making HTTP POST or GET mehtod
    	public JSONObject makeHttpRequest(String url, String method,
    			List<NameValuePair> params) {
    
    		// Making HTTP request
    		try {
    
    			// check for request method
    
    			/*
    			 * if (method == "POST") { // request method is POST //
    			 * DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost
    			 * httpPost = new HttpPost(url); httpPost.setEntity(new
    			 * UrlEncodedFormEntity(params));
    			 * 
    			 * HttpResponse httpResponse = httpClient.execute(httpPost);
    			 * HttpEntity httpEntity = httpResponse.getEntity(); is =
    			 * httpEntity.getContent();
    			 * 
    			 * }
    			 */
    
    			if (method == "GET") {
    				// request method is GET
    				DefaultHttpClient httpClient = new DefaultHttpClient();
    				String paramString = URLEncodedUtils.format(params, "utf-8");
    				url += "?" + paramString;
    				HttpGet httpGet = new HttpGet(url);
    
    				HttpResponse httpResponse = httpClient.execute(httpGet);
    				HttpEntity httpEntity = httpResponse.getEntity();
    				is = httpEntity.getContent();
    			}
    
    		} catch (UnsupportedEncodingException e) {
    			e.printStackTrace();
    		} catch (ClientProtocolException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    
    		try {
    
    			Log.w("INbUFFERED Reader", "before  the buffered reader beguin");
    			BufferedReader reader = new BufferedReader(new InputStreamReader(
    					is, "iso-8859-1"), 8);
    			StringBuilder sb = new StringBuilder();
    			String line = null;
    			while ((line = reader.readLine()) != null) {
    				sb.append(line);
    
    			}
    			is.close();
    
    			json = sb.toString().substring(0, sb.toString().length() - 1);
    			json = sb.toString();
    		} catch (Exception e) {
    			Log.e("Buffer Error", "Error converting result " + e.toString());
    		}
    
    		// try parse the string to a JSON object
    		try {
    			Log.w("INbUFFERED Reader", "before  the Parsing beguin");
    			jObj = new JSONObject(json);
    		} catch (JSONException e) {
    			Log.e("JSON Parser", "Error parsing data " + e.toString());
    		}
    
    		// return JSON String
    		return jObj;
    
    	}
    }
    check.php
    ========
    PHP Code:
    <?php

    require_once('db_config.php'); 


    // array for JSON response
    $response = array();
    //$person = null;

    //if(isset($_GET["Username"])and isset($_POST["Password"])){

      
    if(isset($_GET['pid'])){
    //   $username = $_POST['Username'];
    //   $password = $_POST['Password'];

         
    $pid $_GET['pid'];   

    //   $query_search = "select username, password from members where username = '".$username."' AND password = '".$password. "'";
         
         
    $query_search "select * from members where id = '".$pid."'";     
      
         
    $query_exec mysql_query($query_search) or die(mysql_error());

       if (
    mysql_num_rows($query_exec) > 0
       {
            
    $result mysql_fetch_array($query_exec);
       
            
    $person = array();
            
    $person["username"]=$result["user_name"];
            
    $person["password"]=$result["password"];
            
        
       
       
    // success
            
    $response["success"] = 1;

       
    // user node
            
    $response["person"] = array();

            
    array_push($response["person"], $person);

       
    // echoing JSON response
            
    echo json_encode($response);

        }
        else
        {
       
    // no user found
                
    $response["success"] = 0;
                
    $response["message"] = "No User found";

                echo 
    $response["person"];
       
    // echo no users JSON
               
    echo json_encode($response);
        }
    }
    else 
    {
        
    // required field is missing
        
    $response["success"] = 0;
        
    $response["message"] = "Required field(s) are missing";

        
    // echoing JSON response
        
    echo json_encode($response);
    }     
    ?>

  2. #2
    i facing the same error, how do you solve that ?



Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •