이 기사에서는 Android 클라이언트와 결합된 PHP를 사용한 쿼리 상호 작용의 예를 공유합니다. Java 측은 주로 세 단계로 구현됩니다. 첫 번째 단계는 http 요청 및 네트워크 요청 관련 작업을 수행하는 것입니다. HTTP GET 요청을 보내고 HttpResponse 객체를 반환합니다. 세 번째 단계에서는 getEntity 메서드를 사용하여 결과를 반환합니다. 그것이 모두에게 도움이 되기를 바랍니다.
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 Android 측:
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); } } };
관련 권장 사항:
위 내용은 상호 작용을 달성하기 위해 PHP와 Android 클라이언트를 결합했습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!