Skip to main content

Connecting to a remote mysql database using php and Android?

Connecting to a remote database has been a Herculean Task for some programmers. No more worries here is a simple post to make it really simple. Follow these steps exactly to get it done.

Remember these when you are working with an online database.

1. Make sure that you have a running server.
2. INTERNET permission should be present in the AndroidManifest file of your app.
3. The path that you give in your program to point to the server file should be correct.

After ensuring all these you are ready to go.

First we will start with the Server side. Here I am going with a PHP example.

I am getting a value from the Android side by using a variable say "my_val".
Then the PHP script will look like this.
Note that here I am only sending one value from the Android side to the PHP Side.
so the Server side code will look like this.


$val = $_POST['my_val'];
echo $val;


Look at the varaible name inside the $_POST. Make sure that you use the same variable name in the Android side also. It is also case sensitive.

Here I am echoing back any value that is sending from the Android side.
You can do anything with it in the server side. Here I am just echoing it back.
You can simply insert it into a database and echo something else. Anything you echo will be received by the Android

Our Server side code is complete
Now we switch on to the Android side.

This is the code that connects with the server.


Thread thread = new Thread()
		 {
			 @Override public void run()
			 {
				 try
			 {
					 httpclient=new DefaultHttpClient();
					 httppost= new HttpPost("your url");
			 }
		 }
		   // make sure the url is correct.
		   //add your data
		   nameValuePairs = new ArrayList<NameValuePair>(1);
		   nameValuePairs.add(new BasicNameValuePair("my_val","my Test value from the Android Side"));
		   httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
		 //Execute HTTP Post Request response=httpclient.execute(httppost);
		   ResponseHandler<String> responseHandler = new BasicResponseHandler();
		   final String response = httpclient.execute(httppost, responseHandler);
		   System.out.println("Response : " + response);
		 }
		 catch(Exception e)
		 {
			 System.out.println("Exception : " + e.getMessage());
		 }
		 }
	};
	thread.start();



If you are working on LocalHost use url "http://10.0.0.2/your_folder_address.php"

OK Done. You have successfully connected to a remote server. Check your LogCat for the value from the server Make sure you have internet connection before doing this, otherwise exception will be thrown. By this way you can send any number of variables from the Android side to the PHP side but make sure that both have the same name (case sensitive).

Comments

Popular posts from this blog

Spannable String in Android - URL Span ,Clickable Span, Rich-Style Formatting of Textview .....

See more Android Tutorials here....... Faster Loading images in GridViews or ListViews Spannable brings lots of possibility to TextView, includes displaying various appearance of a Text and onClick callbak. The SpannableString class allows you to easily format certain pieces which are called spans of a string, by applying CharacterStyle ie,color, font, ormake it a link . Here is an example where, explained how to use spannable string to give font size, color, linking a text via clickable span and through URL Span and to strike through the text. Lets go through the example : import android.os.Bundle; import android.text.SpannableString; import android.text.method.LinkMovementMethod; import android.text.style.ClickableSpan; import android.text.style.ForegroundColorSpan; import android.text.style.RelativeSizeSpan; import android.text.style.StrikethroughSpan; import android.text.style.URLSpan; import android.view.View; import android.widget.TextView; import android.widget.Toast;

Passing Images between Activities in Android

in First Activity: Intent intent=new Intent(FirstClass.this, SecondClass.class); Bundle bundle=new Bundle(); bundle.putInt("image",R.drawable.ic_launcher); intent.putExtras(bundle); startActivity(intent); in Second Acticity: Bundle bundle=this.getIntent().getExtras(); int pic=bundle.getInt("image"); v.setImageResource(pic); another method: in First Activity: Drawable drawable=imgv.getDrawable(); Bitmap bitmap= ((BitmapDrawable)drawable).getBitmap(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos); byte[] b = baos.toByteArray(); Intent intent=new Intent(Passimage.this,myclass.class); intent.putExtra("picture", b); startActivity(intent); in Second Acticity: Bundle extras = getIntent().getExtras(); byte[] b = extras.getByteArray("picture"); Bitmap bmp = BitmapFactory.decodeByteArray(b, 0, b.lengt

Show and Resume Android Soft-Keyboard

Code to show keyboard: InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(yourEditText,InputMethodManager.SHOW_IMPLICIT); Code resume keyboard : InputMethodManager imm = (InputMethodManager)gettSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);