从Android插入Mysql数据库。我修的地方

时间:2015-02-22 23:20:39

标签: php android mysql insert

我正在编写一个将数据插入MySQL数据库的应用程序。我在PHP中编写了sql查询,当我在android应用程序中输入值时,我没有看到log cat中的任何错误,但是值没有存储在数据库中。 php代码:

<?php
    $baglan=mysql_connect('localhost','root','');
    $sec=mysql_select_db("bitirme",$baglan);

    $yemek=$_POST['yemek'];
    $icecek=$_POST['icecek'];
    $tatli=$_POST['tatli'];

    mysql_query("insert into deneme(yemek,icecek,tatli) values('{$yemek}','${icecek}','${tatli}')");
?>

android代码:

protected void onCreate(Bundle savedInstanceState) {


    final StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy);
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    e1 = (EditText) findViewById(R.id.editText);
    e2 = (EditText) findViewById(R.id.editText2);
    e3 = (EditText) findViewById(R.id.editText3);
    b1 = (Button) findViewById(R.id.button);


    b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
          //  yemek = ""+ e1.getText().toString();
           // icecek = ""+ e2.getText().toString();
           // tatli = ""+e3.getText().toString();

            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);

            nameValuePairs.add(new BasicNameValuePair("yemek",e1.getText().toString()));
            nameValuePairs.add(new BasicNameValuePair("icecek",e2.getText().toString()));
            nameValuePairs.add(new BasicNameValuePair("tatli",e3.getText().toString()));

            try
            {
                HttpClient httpclient = new DefaultHttpClient();
                HttpPost httppost = new HttpPost("http://10.0.2.2/deneme.php");
                httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                HttpResponse response = httpclient.execute(httppost);
                HttpEntity entity = response.getEntity();
                is = entity.getContent();

                String msj="basariyla eklendi";
                Toast.makeText(getApplicationContext(),msj,Toast.LENGTH_LONG).show();
                //Log.e("pass 1", "connection success ");
            }
            catch(ClientProtocolException e)
            {
                //Log.e("Fail 1", e.toString());
                Log.e("ClientPRotocol","Log_tag");
                e.printStackTrace();
                //Toast.makeText(getApplicationContext(), "Invalid IP Address",
                //       Toast.LENGTH_LONG).show();
            }
            catch(IOException e)
            {
                Log.e("Log_tag","IOException");
                e.printStackTrace();
            }
           // insert();

        }
    });
}

1 个答案:

答案 0 :(得分:0)

可能有某些原因尝试这些

1)检查与服务器的连接是否正常

2)当你收到这些变量时,尝试在服务器端使用一些调试,比如从android端接收这些变量。

3)尝试从服务器端硬编码插入一些虚拟数据,如果它正常工作,那么如果你从android中恢复值也可以工作。

希望这会有所帮助