0

我正在尝试使用 PHP 文件将数据从 Android 应用程序发送到远程数据库。我遇到的问题是应用程序没有崩溃并且没有发送数据:我知道我可以看到来自 PHP 文件的 JSON 响应的结果,但我不使用它,因为我不知道如何处理 JSON。

这是 php 代码和相关的活动:

<?php

        $Nome;
        $Tavolo;

        //Apro la connessione con il server mySQL

        $Conn = mysql_connect("localhost", "root", "");
        if(!$Conn)
        {
            die('Errore di connessione: ' .mysql_error());


        }


            //Seleziono il mio database
            $DBS = mysql_select_db('ordinazioni', $Conn);
            if(!$DBS)
            {
                die('Accesso al database non riuscito: ' .mysql_error());
            }

            //echo "Mi sono connesso!";

            $Nome = $_POST['Nome'];
            $Tavolo = $_POST['Tavolo'];

            $strSQL = mysql_query("INSERT INTO Comande (Nome, Tavolo) VALUES ('$Nome', '$Tavolo')");


?>

安卓代码;

public class AggiungiProdotto extends Activity 

{

TextView tv1;
    private static String indirizzo ="http://10.0.2.2/tesina/Aggiungi_Ordinazione";
    private String Nome = "test";

@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.aggiungi_prodotto);

    Invio();


}

public void Invio() 
{
    int NumTavolo = 2;
    final String Tavolo = Integer.toString(NumTavolo);

    Thread thread = new Thread()
    {
        @Override
        public void run() 
        {




            //Intent intent = getIntent();

            HttpClient httpclient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost(indirizzo);


            try 
            {

                List<NameValuePair> Comanda = new ArrayList<NameValuePair>(2);
                Comanda.add(new BasicNameValuePair("Nome", Nome));
                Comanda.add(new BasicNameValuePair("Tavolo", Tavolo));
                httppost.setEntity(new UrlEncodedFormEntity(Comanda));

                ResponseHandler<String> responseHandler = new BasicResponseHandler();
                final String Risposta = httpclient.execute(httppost, responseHandler);
                tv1 = (TextView) findViewById(R.id.tv1);
                tv1.setText("Response : " + Risposta);

            } 
            catch (ClientProtocolException e) 
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } 
            catch (IOException e) 
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        }


    };

    thread.start();
}

}

你能帮我解决这个问题吗?谢谢你。

4

1 回答 1

0

您没有在请求中添加您的数据。

httppost.setEntity(new UrlEncodedFormEntity(Comanda));

httpclient.execute(httppost);
于 2013-03-11T14:42:44.917 回答