Click here to Skip to main content
15,885,914 members
Articles / Mobile Apps / Android
Tip/Trick

Send and Recive Parameter with Android To Mysql PHP

Rate me:
Please Sign up or sign in to vote.
2.67/5 (7 votes)
24 Nov 2011CPOL 85.3K   7   6
Send and Recive Parameter with Android To Mysql PHP
Java
package com.phpserver;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.ListActivity;
import android.net.ParseException;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

public class send1 extends ListActivity {
	int ct_id;
	String[] ct_name = null;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// setContentView(R.layout.main);
		String result = null;
		InputStream is = null;
		StringBuilder sb = null;
		// http post
		try {
			HttpClient httpclient = new DefaultHttpClient();
			HttpPost httppost = new HttpPost("http://10.0.2.2:8086/city.php");
			// httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
			HttpResponse response = httpclient.execute(httppost);
			HttpEntity entity = response.getEntity();
			is = entity.getContent();
		} catch (Exception e) {
			Log.e("log_tag", "Error in http connection" + e.toString());
		}
		// convert response to string
		try {
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					is, "iso-8859-1"), 8);
			sb = new StringBuilder();
			sb.append(reader.readLine() + "\n");
			String line = "0";
			while ((line = reader.readLine()) != null) {
				sb.append(line + "\n");
			}
			is.close();
			result = sb.toString();
		} catch (Exception e) {
			Log.e("log_tag", "Error converting result " + e.toString());
		}
		// paring data
		JSONArray jArray;
		try {
			jArray = new JSONArray(result);
			JSONObject json_data = null;
			ct_name = new String[jArray.length()];
			for (int i = 0; i < jArray.length(); i++) {
				json_data = jArray.getJSONObject(i);
				ct_id = json_data.getInt("CITY_ID");
				ct_name[i] = json_data.getString("CITY_NAME");
			}
		} catch (JSONException e1) {
			Toast.makeText(getBaseContext(), "No City Found", Toast.LENGTH_LONG)
					.show();
		} catch (ParseException e1) {
			e1.printStackTrace();
		}
		setListAdapter(new ArrayAdapter<string>(this,
				android.R.layout.simple_list_item_1, ct_name));
		ListView lv;
		lv = getListView();
		lv.setTextFilterEnabled(true);
		lv.setOnItemClickListener(new OnItemClickListener() {
			public void onItemClick(AdapterView					int position, long id) {
				// When clicked, show a toast with the TextView text
				Toast.makeText(getApplicationContext(),
						ct_name[position] + " wasClicked", Toast.LENGTH_SHORT)
						.show();
			}

			
		});
	}
}</string>

-------------------------------------------------------------------------
PHP code for receiving data:
-------------------------------------------------------------------------

PHP
$hostname_localhost ="localhost";
$database_localhost ="mydatabase";
$username_localhost ="root";
$password_localhost ="";

$localhost = mysql_connect($hostname_localhost,$username_localhost,$password_localhost)
or
trigger_error(mysql_error(),E_USER_ERROR);

mysql_select_db("Deal");
$sql=mysql_query("select * from CITY where CITY_NAME like 'A%'");
while($row=mysql_fetch_assoc($sql))
$output[]=$row;
print(json_encode($output));
mysql_close();
?>


-------------------------------------------------------------------------
java code for Insert data:
-------------------------------------------------------------------------
Java
 package com.Insert;

import java.io.InputStream;
import java.util.ArrayList;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import android.app.ListActivity;
import android.os.Bundle;
import android.util.Log;


public class Insert extends ListActivity {
	String[] ct_name = null;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// setContentView(R.layout.main);
		
		InputStream is = null;
		// http post
		ArrayList<namevaluepair> nameValuePairs = new ArrayList<namevaluepair>();		nameValuePairs.add(new BasicNameValuePair("c_name","KL"));
		try{
			HttpClient httpclient = new DefaultHttpClient();
			HttpPost httppost = new HttpPost("http://10.0.2.2:8086/city1.php");
			httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
			HttpResponse response = httpclient.execute(httppost);
			HttpEntity entity = response.getEntity();
			is = entity.getContent();
			}catch(Exception e){
			Log.e("log_tag", "Error in http connection"+e.toString());
			}
		}
		
	}


-------------------------------------------------------------------------
PHP code for Insert data:
-------------------------------------------------------------------------

PHP
 $hostname_localhost ="localhost";
$database_localhost ="mydatabase";
$username_localhost ="root";
$password_localhost ="";

$localhost = mysql_connect($hostname_localhost,$username_localhost,$password_localhost)
or
trigger_error(mysql_error(),E_USER_ERROR);

mysql_select_db("Deal");
$sql=mysql_query("INSERT INTO CITY (CITY_NAME)VALUES('".$_REQUEST['c_name']."')");
//for updation
//$sql=update CITY set CITY_NAME='".$_REQUEST['c_name']."' where CITY_ID=22
$r=mysql_query($sql);
if(!$r)
echo "Error in query: ".mysql_error();
mysql_close();
?>



********************Add
HTML
<uses-permission android:name="android.permission.INTERNET" xmlns:android="#unknown"></uses-permission>

to AndroidManifest


To connect to your emulator, you can use this link: http://10.0.2.2:8080/.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionHow to send CityID and City name and get other values like city people list (example) in your example Pin
Member 1402237229-Nov-18 16:07
Member 1402237229-Nov-18 16:07 
Questionwhat about internet permission? Pin
ammarali298-Jun-15 21:11
ammarali298-Jun-15 21:11 
QuestionCould you supply the android layout for your project?. Pin
Joe Lyons29-Jan-13 7:32
Joe Lyons29-Jan-13 7:32 
QuestionConnection Android with PHP Pin
PanjaabiMunda7-May-12 1:53
PanjaabiMunda7-May-12 1:53 
AnswerRe: Connection Android with PHP Pin
WebMaster29-Dec-12 23:59
WebMaster29-Dec-12 23:59 
GeneralMy vote of 5 Pin
rubydark16-Apr-12 2:53
rubydark16-Apr-12 2:53 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.