ClientToSever Test

实现客户端上传数据到服务器端

  • 搭建服务器,新建数据库;
  • 新建PHP文件;
  • 新建android工程;

1. 在本地下载XAMPP软件后进行安装和配

  • 配置XAMPP

在浏览器里输入:localhost或者127.0.0.1即可看到XAMPP欢迎界面。

  • 修改phpMyAdmin配置

首先用相关软件打开位于D:/xampp/phpMyAdmin(安装目录)文件夹中的config.inc.php文件。

搜索 $cfg[‘Servers‘][$i][‘auth_type‘]=‘config‘ 将其中的config(系缺省值)更改为cookie保存。

  • 登陆XAMPP主页 

通过默认主页localhost左侧的phpmyadmin导航栏进入phpmyadmin界面,可直接通过localhost/phpmyadmin/进入web登陆界面,输入用户名root后直接点击登陆(密码默认为空)即可。

  • 新建管理员账号及密码

首先进入权限选项卡,点击root帐号编辑其权限,在最底端的只输入相应的用户名和密码,其余选项保持其缺省值,确认后即可产生与原有root帐号相同权限的新帐号

  • 测试配置是否完成  

您可以在xampp目录下的htdocs文件夹下创建任意一个站点。例如:将测试文件test.html放在.\xampp\htdocs\new路径下,您就可以在浏览器的地址栏中输入localhost/new/test.html来访问这个文件。

2. 在服务器上新建数据库

  • 浏览器打开localhost/phpmyadmin/或者在XAMPP Control Panel面板上点击MySQL的Admin按钮进入网页
  • 点击“数据库”选项卡进行数据哭创建,输入数据库名即可。
  • 在页面左侧点击新建数据库,即可进行数据表的新建。输入新建数据表的名称及字段数,点击执行即可创建。

3. 新建php文件

     

<?php

$conn = mysql_connect("localhost"."siguoyi","140265");  // 连接服务器

if(!conn){

die("conn error");

}

$db = mysql_select_db("buptant",$conn);   // 连接数据库

mysql_set_charset("utf8");

$jsonString = $_POST("jsonString");

$jsonString = str_replace(‘\"‘,‘"‘,$jsonString);

$obj = json_decode($jsonString);

$name = $obj->name;

$age= $obj->age;

$sex= $obj->sex;

$school= $obj->school; // 对变量进行赋值

try {

$sql = "INSERT INTO `student` (`name`,`age`,`sex`,`school`) VALUES (‘$name‘,‘$age‘,‘$sex‘,‘$school‘)";  // 插入数据

$resultNew = mysql_query($sql,$conn);

if(!$resultNew){

echo "error";

}else{

echo "ok";

}  // 查询数据是否插入

$insert_id = mysql_insert_id();

} catch (Exception $e){ }

?>

4. 新建Android工程

  • 用json对数据进行打包上传
String name = et_name.getText().toString();

String age = et_age.getText().toString();

String sex = et_sex.getText().toString();

String school = et_school.getText().toString();

try {

jsonObject.put("name", name);

jsonObject.put("age", age);

jsonObject.put("sex", sex);

jsonObject.put("school", school);

} catch (JSONException e) {

e.printStackTrace();

}

Log.v("uploaddata", "json" + jsonObject);

  • 用httpClient进行通信
   

public String upData() {

String resultID = "-1";

List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>();

nameValuePair.add(new BasicNameValuePair("jsonString", jsonObject));

InputStream inputStream = null;

try {

HttpClient httpClient = new DefaultHttpClient();

HttpPost httpPost = new HttpPost(uploadDataURL);

httpPost.setEntity(new UrlEncodedFormEntity(nameValuePair, "UTF-8"));

HttpResponse httpResponse = httpClient.execute(httpPost);

HttpEntity httpEntity = httpResponse.getEntity();

inputStream = httpEntity.getContent();

BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));

String line = "";

String result = "";

while ((line = reader.readLine()) != null) {

result = result + line;

}

resultID = result;

} catch (Exception e) {

e.printStackTrace();

}

return resultID;

}

  • 在进行数据上传时需新开线程
     new Thread(){

@Override

public void run() {

// TODO Auto-generated method stub

UploadData upload = new UploadData(Url, jsonObject);

String result = upload.upData();

Log.v("uploaddata", "result:" + result);

}

}.start();

时间: 2024-08-24 16:11:42

ClientToSever Test的相关文章

Android ClientToSever Test

实现客户端上传数据到服务器端 搭建服务器,新建数据库: 新建PHP文件: 新建android工程: 1. 在本地下载XAMPP软件后进行安装和配置. 配置XAMPP 在浏览器里输入:localhost或者127.0.0.1即可看到XAMPP欢迎界面. 修改phpMyAdmin配置 首先用相关软件打开位于D:/xampp/phpMyAdmin(安装目录)文件夹中的config.inc.php文件. 搜索 $cfg['Servers'][$i]['auth_type']='config' 将其中的c