Android通过PHP连接MySQL(读取) 类似,界面不变,把 AndroidTestActivity.java 修改为:
select.php
<?php mysql_connect("127.0.0.1","root","123456"); mysql_query("SET NAMES utf8"); mysql_select_db("test");
$sql=mysql_query("select * from teacher where id='".$_REQUEST['id']."' and name='".$_REQUEST['name']."'"); while($row=mysql_fetch_assoc($sql)) $output[]=$row; print(json_encode($output)); mysql_close(); ?>
package com.knight.android.MySQL;
import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList;
import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; 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 org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject;
import android.app.Activity; import android.net.ParseException; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText;
public class Android_MySQLActivity extends Activity { JSONArray jArray; String result = null; InputStream is = null; StringBuilder sb=null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button b1 = (Button) findViewById(R.id.button1); b1.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub EditText tv = (EditText) findViewById(R.id.editView); ArrayList nameValuePairs = new ArrayList(); nameValuePairs.add(new BasicNameValuePair("id","3")); nameValuePairs.add(new BasicNameValuePair("name","Guo")); //http post try{ HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://175.186.54.10/select.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=null; 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 int ct_id; String ct_name; try{ jArray = new JSONArray(result); JSONObject json_data=null; for(int i=0;i<jArray.length();i++){ json_data = jArray.getJSONObject(i); ct_id=json_data.getInt("id"); ct_name=json_data.getString("name"); tv.append(ct_name+" \n"); } }catch(JSONException e1){ // Toast.makeText(getBaseContext(), "No City Found" ,Toast.LENGTH_LONG).show(); } catch (ParseException e1) { e1.printStackTrace(); } } }); } }

转发来自: http://blog.sina.com.cn/s/blog_6923201d01012rd7.html

更多相关文章

  1. Android异步处理系列文章四篇之一使用Thread+Handler实现非UI线
  2. Android 界面布局之RelativeLayout
  3. 使用AsyncTask异步更新UI界面
  4. android开发,修改默认界面的背景色
  5. Android常用UI界面设计及国际化
  6. 关于Android软键盘弹出,会把原来的界面挤上去的问题
  7. android 界面中加入密码框
  8. WPF实现定时刷新UI界面的实例详解
  9. c语言如何实现做界面

随机推荐

  1. 如何使用 Docker Compose 来构建一套开发
  2. 详解服务器处理器基础知识
  3. 关于InfiniBand架构和知识点漫谈
  4. Flash闪存颗粒和SSD知识深度解析
  5. 细数主流数据中心资产管理软件
  6. NVMe Over Fabrics架构概述
  7. 创建数据库
  8. php之数据库链式操作
  9. PHP:oop->细说命名空间/命名空间类的自动
  10. js的for和php的for