要用php对百度云数据库进行操作的话,都要先通过php文件连接到百度云,连接云数据库的php文件名是conn,内容如下:
<?php
//echo "这是php数据库访问层!";
$dbhost = "sqld.duapp.com:4050";
$dbuser = ""; //我的用户名
$dbpass = ""; //我的密码
$dbname = ""; //我的mysql库名
$cn = mysql_connect($dbhost,$dbuser,$dbpass) or die("connect
error");
@mysql_select_db($dbname)or die("db error");
mysql_query("set names 'UTF8'");
mysql_query("set character_set_client=utf8");
mysql_query("set character_set_results=utf8");
?>用户登录:
php文件,其中User表是在百度云数据库中创建的。
<?php
include ("conn.php");
$id=str_replace(" ","",$_POST['id']);//id为登录账号
$pwd=str_replace(" ","",$_POST['pwd']);//pwe为登录密码
$sql="select * from User where Uid='$id' and pwd='$pwd'";
$query=mysql_query($sql);
$rs = mysql_fetch_array($query);
if(is_array($rs)){
echo 'OK';
}else echo 'illegal user';
?>ArrayList<BasicNameValuePair> list=new ArrayList<BasicNameValuePair>();
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'。
多条查询,例如从云数据库中查找表中所有的微博,表的字段为:
立即学习“PHP免费学习笔记(深入)”;
Mbid:微博id
Mbuid:发表此微博的用户id
Mbcontent:微博内容
Mbtime:发表微博的时间
Mbnumzan:赞此微博的数目
Mbnumping:评论此微博的数目
picName:发表的图片的名字
那么php文件就是:
<?php
include ("conn.php");//连接数据库
$sql="SELECT * FROM Microblog,User where Microblog.Mbuid=User.Uid";
$rs=mysql_query($sql);
$user = array();
while($row = mysql_fetch_array($rs))
{
$Mbid = $row['Mbid'];
$Mbuid = $row['Mbuid'];
$Mbcontent = $row['Mbcontent'];
$Mbtime=$row['Mbtime'];
$Mbnumzan = $row['Mbnumzan'];
$Mbnumping = $row['Mbnumping'];
$nickname = $row['nickname'];
$iName = $row['iName'];
$picName = $row['picName'];
$ary = array(
Mbid => $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<Map<String, Object>> getData() {
List<Map<String, Object>> list=new ArrayList<Map<String,Object>>();
StringBuilder builder = new StringBuilder();
HttpPost httpRequest = new HttpPost(sendUri);
try{
HttpResponse httpResponse=new DefaultHttpClient().execute(httpRequest);//发出HTTP请求,<span style="font-family: Arial, Helvetica, sans-serif;">取得HTTP response</span>
<span style="white-space:pre"> </span>    <span style="white-space:pre"> </span>//若状态码为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中<span style="font-family: Arial, Helvetica, sans-serif;">$users['Microblog']=$user的Microblog名称一致</span>
for(int i=0;i<jsonArray.length();i++){
JSONObject jsonObject1 =(JSONObject) jsonArray.get(i);
int Mbid= jsonObject1.getInt("Mbid");
String Mbuid= jsonObject1.getString("Mbuid");
String Mbcontent= jsonObject1.getString("Mbcontent");
String Mbtime= jsonObject1.getString("Mbtime").toString().substring(5, 16);
String Mbnumzan= jsonObject1.getString("Mbnumzan");
String Mbnumping= jsonObject1.getString("Mbnumping");
String nickname=jsonObject1.getString("nickname");
String iName=jsonObject1.getString("iName");//头像名称
String picName=jsonObject1.getString("picName");//图片名称
Map<String, Object>map = new HashMap<String, Object>();
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;
}
}
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号