How to pass variables from Android to be read by a PHP file, which then reads MYSQL Database and returns other data? -


here php file needs receive asort variables android, using can pulls specific data database:

php      include('connect.php');      $asortid=$_post['asortid'];     $asortlastname=$_post['asortlastname'];     $asortemail=$_post['asortemail'];     $afilter = $_post['afilter'];      if ($afilter=='') { $asorturgency="5"}     if ($afilter!='') {      // set filters     if ($asortid=='' || $asortid=='all id') { $mysortid="%"; } else{  $mysortid="%".$asortid."%";  }         if ($asortemail=='' || $asortemail=='any email') {  $mysortemail="%"; } else {  $mysortemail="%".$asortemail."%"; }       // master result query     $query=mysql_query("select * names (id '".$mysortid."') , (email        '".$mysortemail."');      //execute query     try {     $stmt   = $db->prepare($query);     $result = $stmt->execute($query_params);     }     catch (pdoexception $ex) {     $response["success"] = 0;     $response["message"] = "database error!";     die(json_encode($response));     }     // finally, can retrieve of found rows array using fetchall     $rows = $stmt->fetchall();     if ($rows) {     $response["success"] = 1;     $response["message"] = "post available!";     $response["posts"]   = array();            foreach ($rows $row) {             $post             = array();             $post["id"] = $row["id"];             $post["firstname"]  = $row["firstname"];                     $post["middlename"] = $row["middlename"];             $post["lastname"]  = $row["lastname"];                     $post["email"] = $row["email"];             $post["comments"]  = $row["comments"];          //update our repsonse json data        array_push($response["posts"], $post);      }        //echoing json response      echo json_encode($response);      }       else {     $response["success"] = 0;     $response["message"] = "no post available!";     die(json_encode($response));     } 

here android file i've attempted send post data read:

import java.io.ioexception; import java.io.unsupportedencodingexception; import java.util.arraylist; import java.util.hashmap; import java.util.list;  import org.apache.http.httpresponse; import org.apache.http.namevaluepair; import org.apache.http.client.clientprotocolexception; import org.apache.http.client.httpclient; import org.apache.http.client.entity.urlencodedformentity; import org.apache.http.client.methods.httppost; import org.apache.http.impl.client.defaulthttpclient; import org.apache.http.message.basicnamevaluepair; import org.json.jsonarray; import org.json.jsonexception; import org.json.jsonobject;  import android.app.listactivity; import android.app.progressdialog; import android.content.intent; import android.os.asynctask; import android.os.bundle; import android.view.menuitem; import android.view.view; import android.widget.adapterview; import android.widget.adapterview.onitemclicklistener; import android.widget.listadapter; import android.widget.listview; import android.widget.simpleadapter; import android.widget.textview; import android.widget.toast;  public class display extends listactivity {      // progress dialog     private progressdialog tdialog;     jsonparser myjsonparser = new jsonparser();      private static final string sortnames = "http://leadpronow.com/demo/sortnames.php";      string sortid, sortname, sorturgency, filtered;      // json ids:     private static final string tag_dposts = "posts";     private static final string tag_did = "id";     private static final string tag_dfirstname = "firstname";     private static final string tag_dmiddlename = "middlename";     private static final string tag_dlastname = "lastname";     private static final string tag_demail = " email";     private static final string tag_dcomments = "comments";      // array of of our leads     private jsonarray mname = null;     // manages of our comments in list.     private arraylist<hashmap<string, string>> mnamelist;      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         // note use read_comments.xml instead of our single_post.xml         setcontentview(r.layout.readpost);      }      @override     protected void onresume() {         // todo auto-generated method stub         super.onresume();         // loading comments via asynctask         new loadnames().execute();     }      public void updatejsondata() {          httpclient httpclient = new defaulthttpclient();         httppost httppost = new httppost(sortnames);          try {              intent in = getintent();             filtered = in.getstringextra("filtered");             sortid = in.getstringextra("sortid");             sortemail = in.getstringextra("sortemail");             sorturgency = in.getstringextra("sorturgency");               list<namevaluepair> namevaluepairs = new arraylist<namevaluepair>    (4);             namevaluepairs.add(new basicnamevaluepair("afilter", filtered));             namevaluepairs.add(new basicnamevaluepair("asortid", sortid));             namevaluepairs.add(new basicnamevaluepair("asortemail",sortemail));             namevaluepairs.add(new  basicnamevaluepair("asorturgency",sorturgency));              httppost.setentity(new urlencodedformentity(namevaluepairs));              httpresponse httpresponse = httpclient.execute(httppost);         } catch (clientprotocolexception e1) {             // todo auto-generated catch block             e1.printstacktrace();         } catch (ioexception e1) {             // todo auto-generated catch block             e1.printstacktrace();         }          mnameslist = new arraylist<hashmap<string, string>>();          jsonparser jparser = new jsonparser();          jsonobject json = jparser.getjsonfromurl(sortnames);          try {             mleads = json.getjsonarray(tag_dposts);              // looping through posts according json object returned             (int = 0; < mleads.length(); i++) {                 jsonobject c = mleads.getjsonobject(i);                  // gets content of each tag                 string did = c.getstring(tag_did);                 string dfirstname = c.getstring(tag_dfirstname);                 string dmiddlename = c.getstring(tag_dmiddlename);                 string dlastname = c.getstring(tag_dlastname);                 string demail = c.getstring(tag_demail);                 string dcomments = c.getstring(tag_dcomments);                   // creating new hashmap                 hashmap<string, string> map = new hashmap<string, string>();                  map.put(tag_did, did);                 map.put(tag_dfirstname, dfirstname);                 map.put(tag_dmiddlename, dmiddlename);                 map.put(tag_dlastname, dlastname);                 map.put(tag_demail, demail);                             map.put(tag_dcomments, dcomments);                  // adding hashlist arraylist                 mleadslist.add(map);              }          } catch (jsonexception e) {             e.printstacktrace();         }     }      /**      * inserts parsed data listview.      */     private void updatelist() {         // listactivity need set list adapter, , in order         //         // that, need create listadapter. simpleadapter,         // utilize our updated hashmapped arraylist,         // use our single_post xml template each item in our list,         // , place appropriate info list         // correct gui id. order important here.          listadapter adapter = new simpleadapter(this, mnameslist,                 r.layout.singlelead, new string[] { tag_dfirstname,                         tag_dmiddlename, tag_dlastname, tag_did,                         tag_demail, tag_dcomments},                 new int[] { r.id.dlfirstname, r.id.dlmiddlename,                         r.id.dllastname, r.id.dlid, r.id.dlemail,                         r.id.dlcomments});          setlistadapter(adapter);          listview lv = getlistview();          lv.setonitemclicklistener(new onitemclicklistener() {             @override             public void onitemclick(adapterview<?> parent, view v,                     int position, long id) {                 // getting values selected listitem                 string longid = ((textview) v.findviewbyid(r.id.id)).gettext()                         .tostring();                  // starting new intent                 intent in = new intent(getapplicationcontext(), editusers.class);                 // sending pid next activity                 in.putextra("listitem", longid);                  // starting new activity , expecting response                 startactivity(in);             }         });     }      public class loadleads extends asynctask<void, void, boolean> {          @override         protected void onpreexecute() {             super.onpreexecute();             tdialog = new progressdialog(leaddisplay.this);             tdialog.setmessage("loading leads...");             tdialog.setindeterminate(false);             tdialog.setcancelable(true);             tdialog.show();         }          @override         protected boolean doinbackground(void... arg0) {             updatejsondata();             return null;          }          @override         protected void onpostexecute(boolean result) {             super.onpostexecute(result);             tdialog.dismiss();             updatelist();         }     } } 

so need id, firstname, middlename, lastname, email , comments show in listview. error there no posts available.

07-31 09:58:43.943: e/json parser(13176): error parsing data org.json.jsonexception: end of input @ character 0 of  07-31 09:58:43.943: w/system.err(13176): org.json.jsonexception: no value posts 07-31 09:58:43.943: w/system.err(13176):    @ org.json.jsonobject.get(jsonobject.java:354) 07-31 09:58:43.943: w/system.err(13176):    @ org.json.jsonobject.getjsonarray(jsonobject.java:544) 07-31 09:58:43.943: w/system.err(13176):    @ com.example.mysqltest.leaddisplay.updatejsondata(leaddisplay.java:151) 07-31 09:58:43.943: w/system.err(13176):    @ com.example.mysqltest.leaddisplay$loadleads.doinbackground(leaddisplay.java:252) 07-31 09:58:43.943: w/system.err(13176):    @ com.example.mysqltest.leaddisplay$loadleads.doinbackground(leaddisplay.java:1) 07-31 09:58:43.943: w/system.err(13176):    @ android.os.asynctask$2.call(asynctask.java:287) 07-31 09:58:43.943: w/system.err(13176):    @ java.util.concurrent.futuretask.run(futuretask.java:234) 07-31 09:58:43.943: w/system.err(13176):    @ android.os.asynctask$serialexecutor$1.run(asynctask.java:230) 07-31 09:58:43.943: w/system.err(13176):    @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1080) 07-31 09:58:43.943: w/system.err(13176):    @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:573) 07-31 09:58:43.943: w/system.err(13176):    @ java.lang.thread.run(thread.java:856) 07-31 09:58:43.963: i/endeffect(13176): abslistview.onmeasure(), getwidth()=1080, 

use link

string link = "http://localhost/login.php?username="         +username+"&password="+password; 

write insert or query in php , send data php passing variables in link (hint) send data android asynctask


Comments

Popular posts from this blog

basic authentication with http post params android -

vb.net - Virtual Keyboard commands -

css - Firefox for ubuntu renders wrong colors -