Soru & Cevap

Android JSON SQL post

21.01.2018 - 12:03

php; 

	$pPost = $_POST["SQLKod"]; 
	$pQuery='SELECT * FROM firma';

	$result=mysqli_query($connect, $pPost);
	$number_of_rows=mysqli_num_rows($result);

	$temp_array=array();
	
	if($number_of_rows>0){
		while($row=mysqli_fetch_assoc($result)){
			$temp_array[]=$row;
		}
	}
	
	header('Content-Type:application/json');
	echo json_encode(array("veriler"=>$temp_array));
	mysqli_close($connect);

 

activity;

//region GOSTER
        btnGoster.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                lstFirmalar.setAdapter(null);
                mylist.clear();
                JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,
                        showUrl, new Response.Listener<JSONObject>(){
                    @Override
                    public void onResponse(JSONObject response) {
                        System.out.println(response.toString());
                        try {
                            JSONArray firmalar= response.getJSONArray("firmalar");
                            for (int i = 0; i < firmalar.length(); i++) {
                                JSONObject showdata= firmalar.getJSONObject(i);
                                String f_id= showdata.getString("firid");
                                String f_ad= showdata.getString("firad");
                                String f_yetkili= showdata.getString("firyetkili");
                                String f_tlf1= showdata.getString("firtelefon");
                                if(f_id.equalsIgnoreCase(edtFirmaTelefon.getText().toString())){
                                    mylist.add(f_ad); //this adds an element to the list.
                                    mylist.add(f_yetkili); //this adds an element to the list.
                                    mylist.add(f_tlf1); //this adds an element to the list.
                                    lstFirmalar.setAdapter(adapter);
                                }
                            }

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }

                    }
                }, new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        System.out.append(error.getMessage());
                    }
                });
                requestQueue.add(jsonObjectRequest);
            }
        });
//endregion GOSTER

slm.a.

Arkadaşlar yaklaşık 3 haftadır araştırıyorum maalesef ki uygulamama uyarlayabileceğim bir çözüm bulamadım.

Şöyle ki;

Yukarıdaki $result=mysqli_query($connect, $pPost); satırında $pPost yerine $pQuery değişkenini kullandığımda verileri listView'imde listeleyebiliyorum. 

Ancak benim yapmak istediğim $pPost değişkenine SQL kodunu göndermek ve verileri buna göre almak. 

Örneğin 

"SELECT * FROM firma WHERE firid=1" ile firma tablomdaki 1.id kaydı

veya başka bir tablodan 

"SELECT musteri.id, musteri.adsoyad FROM musteri" ile musteri tablomdaki tüm müşterilerin id ve adsoyad 

verileri çekmek istiyorum

Yani verileri Android classımdaki belirleyeceğim SQL koda göre çekmek istiyorum.

 

Yardımlarınız için şimdiden teşekkürler.

Saygılar, iyi çalışmalar.

 

 

32 Görüntülenme

2 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user ismakdas
ismakdas
25.01.2018 - 11:00

Sn Samet Aylak cevap için çok teşekkürler.

Şu şekilde yazınca çak güzel çalıştı.

//region GOSTER
        btnGoster.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                lstFirmalar.setAdapter(null);
                mylist.clear();
                Map<String, String> prm = new HashMap<String, String>();
                prm.put("SQLKod", "SELECT * FROM firma  WHERE firid=1;");
                JSONObject jsonObj = new JSONObject(prm);

                JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,
                        showUrl, jsonObj, new Response.Listener<JSONObject>(){
                    @Override
                    public void onResponse(JSONObject response) {
                        System.out.println(response.toString());
                        try {
                            JSONArray firmalar= response.getJSONArray("firmalar");
                            for (int i = 0; i < firmalar.length(); i++) {
                                JSONObject showdata= firmalar.getJSONObject(i);
                                String f_id= showdata.getString("firid");
                                String f_ad= showdata.getString("firad");
                                String f_yetkili= showdata.getString("firyetkili");
                                String f_tlf1= showdata.getString("firtelefon");
                                if(f_id.equalsIgnoreCase(edtFirmaTelefon.getText().toString())){
                                    mylist.add(f_ad); //this adds an element to the list.
                                    mylist.add(f_yetkili); //this adds an element to the list.
                                    mylist.add(f_tlf1); //this adds an element to the list.
                                    lstFirmalar.setAdapter(adapter);
                                }
                            }

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }

                    }
                }, new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        System.out.append(error.getMessage());
                    }
                });
                requestQueue.add(jsonObjectRequest);
            }
        });
//endregion GOSTER

 

 

picture-68435-1491411664.jpg
sametaylak
25.01.2018 - 05:48

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, showUrl, /* Bu kısım */ ,new Response.Listener<JSONObject>()


Merhaba, yukarıda belirttiğim kısıma bir JSONObject geçmen gerekiyor.

JSONObject parameters = new JSONObject(); parameters.put("SQLKod", "SELECT * FROM kullanicilar");

Bu şekilde bir JSON nesnesi yaratabilirsin. Daha sonrasında parameters değişkenini yukarıda belirttiğim yere yazmalısın.