向数据库中添加信息


Adding information into the database

    private void AddGroupTasks(){
    title1 = tTitle.getText().toString();
    detail1 = tDetail.getText().toString();
    ArrayList<NameValuePair> b = new ArrayList<NameValuePair>();
    Tasks = new ArrayList<String>();
    try{
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost ("http://203.209.111.88/AddGroupTasks.php");
        httppost.setEntity(new UrlEncodedFormEntity(b));
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
        is = entity.getContent();
        BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
        StringBuilder sb = new StringBuilder();
        String line=null;
        while ((line = reader.readLine()) != null) {
            sb.append(line + "'n");
        }

所以,当我点击添加时,信息应该被添加到数据库中。但是,它给出一个空值。顺便说一下,我正在写一个待办事项列表应用。

$Title = $_REQUEST['tTitle'];
$Detail = $_REQUEST['tDetail'];
$Group  = $_REQUEST['spin'];
$DueDate = $_REQUEST['tDueDate'];
$Title  = "'".$Title."'";  
$Detail = "'".$Detail."'";
$Group = "'".$Group."'";
$DueDate    = "'".$DueDate."'";
print $Title;
$database = "CloudList";
mysql_connect("localhost","root","1234");
mysql_select_db($database) or die("Unable to select database");
$q = "INSERT INTO message(group_name,message_title,message_details,message_due) VALUES($Group,$Title,$Detail,$DueDate)";
$result = mysql_query($q);
print $q;
mysql_close();
这是我的PHP脚本。

试试这个代码,用你的代码替换,让我知道会发生什么,

private void AddGroupTasks(){
title1 = tTitle.getText().toString();
detail1 = tDetail.getText().toString();
ArrayList<NameValuePair> b = new ArrayList<NameValuePair>();
Tasks = new ArrayList<String>();
try{
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost ("http://203.209.111.88/AddGroupTasks.php");
    b.add(new BasicNameValuePair("tTitle",
                "anyTitle"));
    b.add(new BasicNameValuePair("tDetail",
                "anyDetail"));
    b.add(new BasicNameValuePair("spin",
                "AnythingaboutSpin"));
    b.add(new BasicNameValuePair("tDueDate",
                "anytDueDate"));
    httppost.addHeader("Content-Type", "application/x-www-form-urlencoded");
    httppost.setEntity(new UrlEncodedFormEntity(b, HTTP.UTF_8));
    HttpResponse response = httpclient.execute(httppost);
    HttpEntity entity = response.getEntity();
    is = entity.getContent();
    BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
    StringBuilder sb = new StringBuilder();
    String line=null;
    while ((line = reader.readLine()) != null) {
        sb.append(line + "'n");
    }

尝试在Values部分设置引号。它应该看起来像:

$q = "INSERT INTO message(group_name,message_title,message_details,message_due) VALUES('$Group','$Title','$Detail','$DueDate')";