簡體   English   中英

從Android應用程序將數據提交到MySQL數據庫

[英]Submit data to MySQL database from android app

我正在嘗試編寫保留表格並將其保存為mysql。 因此,表單name, phone, email, comment, time, date, table, people有4-5個字段。 我必須告訴我,我在Java和Android中是一個新手,不知道該怎么做,但我正在嘗試。 我也認為代碼現在真的很亂,所以我需要一些幫助。 這是到目前為止Reservation.java的代碼

public class Reservation extends Activity implements
                             OnClickListener {

String Name;
String Email;
String Phone;
String Comment;
String DateTime;
String Time;
String Table;
String numberOfPeople;

private EditText editText1, editText3, editText2, editText4, txtDate, txtTime;
private Button btnCalendar, btnTimePicker, btnMenues;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.reservation);

    editText1 = (EditText) findViewById(R.id.editText1);
    editText3 = (EditText) findViewById(R.id.editText3);
    editText2 = (EditText) findViewById(R.id.editText2);
    editText4 = (EditText) findViewById(R.id.editText4);
    txtDate = (EditText) findViewById(R.id.txtDate);
    txtTime = (EditText) findViewById(R.id.txtTime);

    btnCalendar = (Button) findViewById(R.id.btnCalendar);
    btnTimePicker = (Button) findViewById(R.id.btnTimePicker);
    btnMenues = (Button) findViewById(R.id.btnMenues);


    btnMenues.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Name = editText1.getText().toString();
            Phone = editText3.getText().toString();
            Email = editText2.getText().toString();
            Comment = editText4.getText().toString();
            DateTime = txtDate.getText().toString();
            DateTime = txtTime.getText().toString();
            new SummaryAsyncTask().execute((Void) null);
        }
    }); 
}

class SummaryAsyncTask extends AsyncTask<Void, Void, Boolean> {

    private void postData(String name, String email, String phone,
            String comment, String date, String table, String numberofpeople) {

        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://link.to.server.com/saveReservation.php");

        try {
            ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(4);
            nameValuePairs.add(new BasicNameValuePair("Name", name));
            nameValuePairs.add(new BasicNameValuePair("Email", email));
            nameValuePairs.add(new BasicNameValuePair("Phone", phone));
            nameValuePairs.add(new BasicNameValuePair("Comment", comment));
            nameValuePairs.add(new BasicNameValuePair("Date", date));
            nameValuePairs.add(new BasicNameValuePair("Table", table));
            nameValuePairs.add(new BasicNameValuePair("numberOfPeople", numberofpeople));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            HttpResponse response = httpclient.execute(httppost);
        }
        catch(Exception e)
        {
            Log.e("log_tag", "Error:  "+e.toString());
        }
    }

    @Override
    protected Boolean doInBackground(Void... params) {
        postData(Name, Email, Phone, Comment, DateTime, Time, Table );
        return null;
    }
 }
}

目前我得到的錯誤是

類型Reservation必須實現繼承的抽象方法View.OnClickListener.onClick(View)Update:

以及如何在一兩行中在數據庫中保存日期和時間? 如果是一行如何在android端做到這一點?

UDPATE2:現在如何實現btnCalendar, btnTimePicker我讓他們在reservation.xml ,他們是在形式上。 我必須在此代碼中實現日期和時間選擇器嗎?

您的類實現了onClick偵聽器,但是您缺少該方法。

刪除implement語句或重寫方法

您的logcat問題在這里:

public class Reservation extends Activity implements OnClickListener

要實現OnClickListener ,然后你正在實施一個匿名onClickListenerbtnMenues 刪除您的implements OnClickListener ,錯誤將消失。

implements OnClickListener但是您並沒有過度使用onclicklistener界面的onClick(View view)方法。 因此,請先覆蓋方法, click listeneroncreate方法中刪除click listener oncreate

有關更多信息,請參見以下鏈接:-

https://anujarosha.wordpress.com/2011/11/13/how-to-implements-onclicklistener-for-a-view-item-in-android/

我認為問題是

public class Reservation extends Activity implements OnClickListener

只是刪除

implements OnClickListener

你不需要這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM