程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> Android通過php連接百度雲數據庫

Android通過php連接百度雲數據庫

編輯:關於PHP編程

Android通過php連接百度雲數據庫



要用php對百度雲數據庫進行操作的話,都要先通過php文件連接到百度雲,連接雲數據庫的php文件名是conn,內容如下:


用戶登錄:

php文件,其中User表是在百度雲數據庫中創建的。


Android程序中需要傳入賬號和密碼並且賬號和密碼都要與php中的一致都是id和pwd。
ArrayList list=new ArrayList();
		list.add(new BasicNameValuePair("id", et_accounts.getText().toString()));
		list.add(new BasicNameValuePair("pwd", et_password.getText().toString()));
		String flag=CloudConnection.gotoLogin(loginuri, list);

如果登錄成功那麼flag的值為‘OK’,否則flag為'illegal user'。



多條查詢,例如從雲數據庫中查找表中所有的微博,表的字段為:

Mbid:微博id

Mbuid:發表此微博的用戶id

Mbcontent:微博內容

Mbtime:發表微博的時間

Mbnumzan:贊此微博的數目

Mbnumping:評論此微博的數目
picName:發表的圖片的名字

那麼php文件就是:

 $Mbid ,
			Mbuid => $Mbuid,
			Mbcontent =>$Mbcontent,
			Mbtime => $Mbtime,
			Mbnumzan => $Mbnumzan,
			Mbnumping => $Mbnumping,
			nickname=> $nickname,
			iName=>$iName,
			picName=>$picName
	);
	array_push($user,$ary);
}

$users['Microblog']=$user;
echo json_encode($users);
?>

因為php返回的是一個對象數組,所以要對php中從雲數據庫獲得的數據進行解析,解析之後的數據存在list中。

public class Microblog_DB {

	String sendUri="https://oursvn.duapp.com/query_microblog.php";//sendUri為你php文件的路徑
	public List> getData() {
		List> list=new ArrayList>();
		StringBuilder builder = new StringBuilder();
		HttpPost httpRequest = new HttpPost(sendUri);

		try{
			HttpResponse httpResponse=new DefaultHttpClient().execute(httpRequest);//發出HTTP請求,取得HTTP response

		    	//若狀態碼為200則請求成功,取到返回數據
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					httpResponse.getEntity().getContent()));

			for (String s = reader.readLine(); s != null; s = reader.readLine()) {
				builder.append(s);
			}
			String jsonString = builder.toString();
			jsonString = jsonString.substring(jsonString.indexOf("{"),jsonString.lastIndexOf("}")+1);
			JSONObject jsonObject = new JSONObject(jsonString);
			JSONArray jsonArray = jsonObject.getJSONArray("Microblog");//Microblog要去php中$users['Microblog']=$user的Microblog名稱一致


			for(int i=0;imap = new HashMap();
				map.put("zan",R.drawable.zan);
				map.put("ping",R.drawable.ping);
				map.put("head",R.drawable.tou12 );
				map.put("nickname", nickname);
				map.put("content", Mbcontent);
				map.put("sendtime", Mbtime);
				map.put("zannum", Mbnumzan);
				map.put("pingnum", Mbnumping);
				map.put("mbid", String.valueOf(Mbid));
				list.add(map);
			}

		}catch(Exception e){
			e.printStackTrace();
		}
		return list;
	}
}


如果是一條查詢而不是多條查詢,那麼可以也可以利用多條查詢的方法來實現,只不過for循環的時候只循環一次罷了。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved