转自:http://blog.csdn.net/ab_ba/article/details/7912424

服务器端:server.php

  1. 1 <?php
  2. 2         include('dbconfig.php');
  3. 3
  4. 4
  5. 5         $address = $_POST['address'];
  6. 6         $longitude = $_POST['longitude'];
  7. 7         $latitude = $_POST['latitude'];
  8. 8
  9. 9
  10. 10         if(empty($address) or empty($longitude) or empty($latitude)){
  11. 11                 die("You have to fill all the fields!");
  12. 12         }
  13. 13         $conn = mysql_connect($server,$username,$password);
  14. 14         if(!$conn){
  15. 15                 die("connection failed:".mysql_error());
  16. 16         }
  17. 17
  18. 18         mysql_select_db($dbName,$conn);
  19. 19
  20. 20         $query = "insert into ".$tableName." values(NULL,'".$address."',".$longitude.",".$latitude.",'".date('Y-m-d H:i:s',time())."');";
  21. 21         $result = mysql_query($query,$conn);
  22. 22         if(!$result){
  23. 23                 die("mysql error:".mysql_error());
  24. 24         }
  25. 25
  26. 26         echo "add information to database sucessfullly!";
  27. 27 ?>

Android端:

  1. package com.wenix;
  2. import java.io.IOException;
  3. import java.io.UnsupportedEncodingException;
  4. import java.net.HttpURLConnection;
  5. import java.util.ArrayList;
  6. import java.util.List;
  7. import org.apache.http.HttpConnection;
  8. import org.apache.http.HttpEntity;
  9. import org.apache.http.HttpResponse;
  10. import org.apache.http.HttpStatus;
  11. import org.apache.http.NameValuePair;
  12. import org.apache.http.client.ClientProtocolException;
  13. import org.apache.http.client.HttpClient;
  14. import org.apache.http.client.entity.UrlEncodedFormEntity;
  15. import org.apache.http.client.methods.HttpPost;
  16. import org.apache.http.impl.client.DefaultHttpClient;
  17. import org.apache.http.message.BasicNameValuePair;
  18. import org.apache.http.util.EntityUtils;
  19. import android.app.Activity;
  20. import android.os.Bundle;
  21. import android.util.Log;
  22. import android.widget.TextView;
  23. public class MainActivity extends Activity {
  24. private static final String TAG = "MainActivity";
  25. TextView tv = null;
  26. /** Called when the activity is first created. */
  27. @Override
  28. public void onCreate(Bundle savedInstanceState) {
  29. super.onCreate(savedInstanceState);
  30. setContentView(R.layout.main);
  31. tv = (TextView)findViewById(R.id.ouputTxt);
  32. String url = "http://10.52.31.96/server.php";
  33. HttpPost httpRequest = new HttpPost(url);
  34. List<NameValuePair> params = new ArrayList<NameValuePair>();
  35. params.add(new BasicNameValuePair("address", "hubuxiang"));
  36. params.add(new BasicNameValuePair("longitude", "100.252255"));
  37. params.add(new BasicNameValuePair("latitude", "-15.415121"));
  38. try {
  39. HttpEntity httpEntity = new UrlEncodedFormEntity(params,"utf-8");
  40. httpRequest.setEntity(httpEntity);
  41. HttpClient httpClient = new DefaultHttpClient();
  42. HttpResponse httpResponse = httpClient.execute(httpRequest);
  43. if(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
  44. String result = EntityUtils.toString(httpResponse.getEntity());
  45. tv.setText(result);
  46. Log.i(TAG,"result = "+result);
  47. }else{
  48. tv.setText("request error");
  49. }
  50. } catch (UnsupportedEncodingException e) {
  51. // TODO Auto-generated catch block
  52. e.printStackTrace();
  53. } catch (ClientProtocolException e) {
  54. // TODO Auto-generated catch block
  55. e.printStackTrace();
  56. } catch (IOException e) {
  57. // TODO Auto-generated catch block
  58. e.printStackTrace();
  59. }
  60. }
  61. }

运行APP,得到如下结果:

数据库数据如下:

Android与PHP服务器交互的更多相关文章

  1. Android和FTP服务器交互,上传下载文件(实例demo)

    今天同学说他备份了联系人的数据放在一个文件里,想把它存到服务器上,以便之后可以进行下载恢复..于是帮他写了个上传,下载文件的demo 主要是 跟FTP服务器打交道-因为这个东东有免费的可以身亲哈 1. ...

  2. java攻城狮之路(Android篇)--与服务器交互

    一.图片查看器和网页源码查看器 在输入地址的是不能输入127.0.0.1 或者是 localhost.ScrollView :可以看成一个滚轴 可以去包裹很多的控件在里面 练习1(图片查看器): pa ...

  3. Android客户端与服务器交互中的token

    学习Token Token是什么? Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Tok ...

  4. Android 客户端与服务器交互

    在android中有时候我们不需要用到本机的SQLite数据库提供数据,更多的时候是从网络上获取数据,那么Android怎么从服务器端获取数据呢?有很多种,归纳起来有 一:基于Http协议获取数据方法 ...

  5. Android数据与服务器交互的GET,POST,HTTPGET,HTTPPOST的使用

    Android有这几种方式,可以提交数据到服务器,他们是怎么使用的呢,这里我们来探讨一下. 这里的例子用的都是提交客户端的用户名及密码,同时本节用到的StreamTools.readInputStre ...

  6. android app与服务器交互

    package mydemo.mycom.demo2.service; import org.apache.http.HttpResponse; import org.apache.http.Name ...

  7. android笔记--与服务器交互更改简历状态

    private AsyncHttpClient asyncHttpClient; private Dialog dialog; /** * 改变简历状态 */ private void postcha ...

  8. Android客户端与服务器

    就是普通的服务器端编程,还不用写界面,其实还比服务器编程简单一些.跟J2EE一样的服务器,你android这一方面只要用json或者gson直接拿数据,后台的话用tomcat接受请求操作数据,功能不复 ...

  9. Android客户端与服务器交互方式-小结

    最近的Android项目开发过程中一个问题困扰自己很长时间,Android客户端与服务器交互有几种方式,最常见的就是webservices和json.要在Android手机客户端与pc服务器交互,需要 ...

随机推荐

  1. [翻译][MVC 5 + EF 6] 9:异步和存储过程

    原文:Async and Stored Procedures with the Entity Framework in an ASP.NET MVC Application 1.为什么使用异步代码: ...

  2. 【转】如何编译安装PHP扩展

    本文参考 一开始安装PHP的时候,我们并不知道需要哪些扩展,所以只有等到我们真正用到的时候才想办法去安装. 安装PHP扩展最简单的办法就是 sudo apt-get install php5-xxx ...

  3. 在LaTeX中利用preview宏包和tikz宏包生成单图pdf

    有时候我们利用tikz宏包画出的图片后,只想生成一个单图pdf,而且pdf的页面大小与图片相同,以便于以后再次用latex插入. 可以与preview宏包进行搭配,页面大小由图像大小决定,可以通过改变 ...

  4. 51nod1240莫比乌斯函数

    莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出.梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号.(据说,高斯(Gauss)比莫比乌斯早三十年就曾考虑过这个函数).   ...

  5. 51nod1242 斐波那契数列 矩阵快速幂

    1242 斐波那契数列的第N项 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 #include<stdio.h> #define mod 100000000 ...

  6. C#中的lock关键字(初识)

    http://kb.cnblogs.com/page/88513/ 首先给出MSDN的定义: lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断.这是通过在代码块运行期间为给定对象获取互 ...

  7. 一步步学习NHibernate(1)——NHibernate介绍

    请注明转载地址:http://www.cnblogs.com/arhat 第十五章 从本章开始,老魏将给大家一起学习NHibernate这个流行的ORM框架,本来老魏想要和大家一起探讨微软的EF框架的 ...

  8. CODEVS 1069关押罪犯

    题目描述 Description S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N.他们之间的关系自然也极 不和谐.很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突.我们用“怨 ...

  9. Extjs 更新数据集Ext.PagingToolbar的start参数重置的处理

    问题:当翻页后,比如当前是第二页,start参数此时是5(初始为0),当切换左侧分类时,我们期望的是从所选分类下明细记录的第一条开始显示,结果发现不是这样,依然是从新数据的第二页开始显示,就是说ext ...

  10. npm常用命令解析

    npm是什么 NPM的全称是Node Package Manager,是随同NodeJS一起安装的包管理和分发工具,它很方便让JavaScript开发者下载.安装.上传以及管理已经安装的包. npm ...