Android Studio uzak mysql bağlantısı

24 Ara 2015
94
0
İstanbul
Selamun Aleyküm arkadaşlar Android Studio da bir proje yapacaktım pek bi kod bilgim yok ordan burdan bakarak yaptığım kod amacım uzak mysql a bağlanıp kullanıcı kayıt etmek ve login olmak. Yardımcı olursanız çok mutlu olurum çünkü yarım günüm gitti :(.

yazdığım kodlar:

Kod:
package com.mehmet_zerey_44outlook.linktlbot;

import android.os.Looper;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.InputType;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
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.apache.http.message.BufferedHeader;
import org.apache.http.params.HttpConnectionParams;
import org.json.JSONArray;
import org.json.JSONObject;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

    EditText ab,bc,cd;
    @Override
    protected **** onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ab = (EditText) findViewById(R.id.editText);
        bc = (EditText) findViewById(R.id.editText2);
        cd = (EditText) findViewById(R.id.editText3);
        Button buton = (Button)findViewById(R.id.button);
        buton.setOnClickListener(new View.OnClickListener() {
            @Override
            public **** onClick(View v) {
                gonder(ab.getText().toString(), bc.getText().toString(), cd.getText().toString());

            }
        });

    }

    public **** gonder(final String al,final String bl,final String cl) {
        Thread t = new Thread(){
            public **** run() {
                Looper.prepare();
                HttpClient client = new DefaultHttpClient();
                HttpConnectionParams.setConnectionTimeout(client.getParams(),5000);
                HttpResponse response;
                try {
                    HttpPost post = new HttpPost("http://parakayisi.com/yeni/kaydet.php");
                    List<NameValuePair> ekleneccekler = new ArrayList<NameValuePair>(2);

                    ekleneccekler.add(new BasicNameValuePair("ad", al));
                    ekleneccekler.add(new BasicNameValuePair("eposta", bl));
                    ekleneccekler.add(new BasicNameValuePair("metin", cl));

                    post.setEntity(new UrlEncodedFormEntity(ekleneccekler,"utf-8"));

                    String html = "";
                    response = client.execute(post);
                    if(response != null){
                        InputStream in = response.getEntity().getContent();
                        BufferedReader reader = new BufferedReader(new InputStreamReader(in));

                        StringBuilder sb = new StringBuilder();
                        String satirlar = null;
                        try {
                            while((satirlar = reader.readLine()) != null ){
                                sb.append(satirlar + "\n");
                            }
                        }catch (IOException e){
                            e.printStackTrace();
                        }finally {
                            try {
                                in.close();
                            }catch (IOException e){
                                e.printStackTrace();
                            }
                        }
                        html = sb.toString();

                        JSONArray parcala = new JSONArray(html);
                        if (parcala.length() > 0){
                            JSONObject obj = parcala.getJSONObject(0);

                            if(obj.getBoolean("islem") != true){
                                Toast.makeText(MainActivity.this,"Bir sorun oluştu ve form gönderilemedi.",Toast.LENGTH_SHORT).show();
                            }else {
                                Toast.makeText(MainActivity.this,"Form bize başarıyla ulaştı en yakın zamanda dönülecektir.",Toast.LENGTH_SHORT).show();
                            }
                        }
                    }


                }catch (Exception e){
                    Log.e("Try-catch hatası:","Hata"+ e);
                }
                Looper.loop();
            }
        };
        t.start();
    }

}

aldığım hata : Value SQLSTATE of type java.lang.String cannot be converted to JSONArray

site php dosyasındaki kod:

Kod:
<?php
    if($_POST){
        // androiddden gelen verileri al ve değişkene aktar
        $ad = stripslashes($_POST["ad"]);
        $eposta = stripslashes($_POST["eposta"]);
        $metin = stripslashes($_POST["metin"]);

        // veritabanı bağlantısını oluştur
        try{
            $baglanti = new PDO("mysql:host=localhost;dbname=xxx;charset=utf8", "xxx", "xxx");
            $baglanti -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        }catch(PDOException $e){
            print $e -> getMessage();
        }

        $gir = $baglanti -> prepare("INSERT INTO veriler SET ad = :a, eposta = :e, metin = :m, gonderilme = :g");
        $sql_giris = $gir -> execute(array("a" => $ad, "e" => $eposta, "m" => $metin, "g" => time()));

        if($sql_giris){
            $data[] = array(
                "islem" => true
            );
        }else{
            $data[] = array(
                "islem" => false
            );
        }

        // son hazırlanan veriyi json formatında ekrana bas.
        header("Content-type: application/json");
        echo json_encode($data);
    }
?>

Teşekkürler.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.