php结合安卓客户端实现查询交互实例

yipeiwu_com6年前PHP代码库

PHP 服务器端:

function getids()
{
  $this->output->set_header('Content-Type: application/json; charset=utf-8');
  $jsonstr = '';
  $pname = $pcallid = $pworkid = '';
 
  if (isset($_GET['name'])) {
    $pname = $_GET['name'];
  }
 
  if (isset($_GET['callid'])) {
    $pcallid = $_GET['callid'];
  }
 
  if (isset($_GET['workid'])) {
    $pworkid = $_GET['workid'];
  }
 
  $this->load->model('wireid_model');
 
  $this->wireid_model->insertonly($pname, $pcallid);
 
  if ($pname == '' && $pcallid == '' && $pworkid == '') {
    die();
  } else {
    $sqlstr = 'select * from twireid where 1=1 ';
    if ($pname != '') {
      $sqlstr = $sqlstr . " and GNAME='{$pname}' ";
    } else
      if ($pcallid != '') {
        $sqlstr = $sqlstr . " and GOLDCALLID='{$pcallid}' ";
      } else
        if ($pworkid != '') {
          $sqlstr = $sqlstr . " and GCARDID='{$pworkid}' ";
        }
    $getdata = $this->wireid_model->getsql($sqlstr);
    // JSON_FORCE_OBJECT 防止出现 []
    $jsonstr = json_encode($getdata->result_array(), JSON_FORCE_OBJECT);
    echo $jsonstr;
  }
}

  java 安卓端:

doAskTask = new Runnable() {
    @Override
    public void run() {
      // TODO
      // 在这里进行 http request.网络请求相关操作
      ggname = etname.getText().toString();
      ggworkid = etworkid.getText().toString();
      ggcallid = etcallid.getText().toString();
 
      String baseurl = ConfidDatas.askbaseurl;
      String askstr = "name=" + ggname + "&callid=" + ggcallid
          + "&workid=" + ggworkid;
      String result = null;
 
      HttpGet httpGet = new HttpGet(baseurl + askstr);
      // 第二步,使用execute方法发送HTTP GET请求,并返回HttpResponse对象
      HttpResponse httpResponse = null;
 
      try {
        httpResponse = new DefaultHttpClient().execute(httpGet);
      } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
 
      Message msg = new Message();
      Bundle data = new Bundle();
 
      if (httpResponse.getStatusLine().getStatusCode() == 200) {
        // 第三步,使用getEntity方法活得返回结果
        try {
          result = EntityUtils.toString(httpResponse.getEntity());
          data.putString("value", result);
          data.putString("result", "isok");
          msg.setData(data);
          handler.sendMessage(msg);
        } catch (ParseException e) {
          // e.printStackTrace();
        } catch (IOException e) {
          // e.printStackTrace();
        }
      } else { // 错误
        data.putString("value", "");
        data.putString("result", "iserr");
        msg.setData(data);
        handler.sendMessage(msg);
      }
    }
  };

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

给初学者的30条PHP最佳实践(荒野无灯)

1,和PHP手册成为好朋友 2,打开Error Reporting Error reporting 在 PHP 开发时是很有帮助的. 你可以在你代码中发现先前你没有发现的错误,因为并不是...

php构造函数实例讲解

PHP官网定义:复制代码 代码如下:构造函数是类中的一个特殊函数,当使用 new 操作符创建一个类的实例时,构造函数将会自动调用。当函数与类同名时,这个函数将成为构造函数。如果一个类没有...

PHP中的多行字符串传递给JavaScript的两种方法

PHP和JavaScript都是初学。最近有这么个需求: 比方说有一个PHP的多行字符串: $a = <<<EOF thy38 csdn blog EOF...

PHP消息队列用法实例分析

本文实例讲述了PHP消息队列用法。分享给大家供大家参考,具体如下: 该消息队列用于linux下,进程通信 #根据路径和后缀创建一个id $key = ftok(__DIR__, 'R...

PHP+ajax 无刷新删除数据

首先本例基于留言本整理版修改。 我们使用了jquery.js来实现ajax和dom删除 首先加入复制代码 代码如下:<script type="text/javascript" s...