2012-10-25 35 views
3

我能夠連接到我的MySQL數據庫,但問題是。使用此代碼,我的android不會將編輯文本值傳遞給PHP。未將我在android中的編輯文本值傳遞給PHP變量

public class MySQL extends Activity { 

    EditText inputName; 
    private static String url_create_product = "http://atlantis-us.com/phpFile.php?"; 

    JSONParser jsonParser = new JSONParser(); 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_my_sql); 
     inputName = (EditText) findViewById(R.id.txt1); 

     ((Button) findViewById(R.id.btnsend)).setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      new CreateNewProduct().execute(); 
     } 
    }); 

    } 

    class CreateNewProduct extends AsyncTask<String, String, String> { 

     @Override 
     protected String doInBackground(String... arg0) { 
      // TODO Auto-generated method stub 
      String name = inputName.getText().toString(); 
      List<NameValuePair> params = new ArrayList<NameValuePair>(); 
      params.add(new BasicNameValuePair("name", name)); 
      JSONObject json = jsonParser.makeHttpRequest(url_create_product, 
        "POST", params); 

      return null; 
     } 

    } 

} 



this is my PHP codes 

<?php 

    $DB_HostName = "localhost"; 
    $DB_Name = "_atlantisdb"; 
    $DB_User = "atlantis_frux"; 
    $DB_Pass = "frux2012"; 
    $DB_Table = "testDB"; 

    if (isset ($_GET["name"])) 
     $name = $_GET["name"]; 
    else 
     $name = "Ghalia"; 

    $con = mysql_connect($DB_HostName,$DB_User,$DB_Pass) or die(mysql_error()); 
    mysql_select_db($DB_Name,$con) or die(mysql_error()); 

    $sql = "insert into $DB_Table (name) values('$name');"; 
    $res = mysql_query($sql,$con) or die(mysql_error()); 

    mysql_close($con); 
    if ($res) { 
     echo "success"; 
    }else{ 
     echo "faild"; 
    }// end else 

?> 

任何人都可以跟蹤什麼是我的代碼worng? 在此先感謝。

回答

1

您正在您的android代碼中使用POST方法發送編輯文本值,並在您的php代碼中使用方法GET獲取值。

chage $_GET["name"] to $_POST["name"] or $_REQUEST['name'] 
+0

如果我改變這個JSONObject的JSON = jsonParser.makeHttpRequest(url_create_product, 「GET」,則params); –

+0

是的,你必須在服務器端和客戶端都使用相同的方法 – koti

+0

我已經使用這個JSONObject json = jsonParser.makeHttpRequest(url_create_product, 「GET」,params);但仍然不能正常工作 –