httpPost用于发布应用程序数据的url


httpPost url to post app data

我想直接从手机将数据发送到MySQL数据库。我用php连接MySQL。但在android代码中,我无法获取httppost中传递的url。我的代码是.

 HttpClient httpclient = new DefaultHttpClient();
                        HttpPost httppost = new HttpPost("127.0.0.1/connect.php");
                        httppost.setEntity(new UrlEncodedFormEntity(data));
                        HttpResponse response = httpclient.execute(httppost);

要在此httppost下设置哪个路径?

请建议!另外,我的php代码是-:

<?php
$icon = mysql_connect("localhost","username","password");
if(!$icon)
{
    die('Could not connect : ' . mysql_error());
}
mysql_select_db("password", $icon)or die("database selection error");
echo json_encode($data);
$firstname=$_POST['firstname'];
$lastname=$_POST['lastname'];
$id=$_POST['id'];
$phone=$_POST['phone'];
$password=$_POST['password'];
mysql_query("INSERT INTO signup_db (firstname, lastname, id, phone, password)
VALUES ('$firstname', '$lastname', '$id', '$phone', '$password')",$icon);
mysql_close($icon);
?>

使用此代码:

public class RegisterActivity extends Activity implements OnClickListener {
private EditText name, email, mobile, password;
private Button btn;
private ProgressBar pb;
String name1, email1, mobile1, password1;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.register);
    name = (EditText) findViewById(R.id.name);
    email = (EditText) findViewById(R.id.email);
    mobile = (EditText) findViewById(R.id.number);
    password = (EditText) findViewById(R.id.password);
    btn = (Button) findViewById(R.id.signup);
    pb = (ProgressBar) findViewById(R.id.progressBar1);
    pb.setVisibility(View.GONE);
    btn.setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}
public void onClick(View v) {
    // TODO Auto-generated method stub
    name1 = name.getText().toString();
    email1 = email.getText().toString();
    mobile1 = mobile.getText().toString();
    password1 = password.getText().toString();
    int success = 1;// for avoiding pressing invalid parameters to website
    if (name1.length() < 1) {
        Toast.makeText(this, "PLEASE ENTER NAME", Toast.LENGTH_SHORT)
                .show();
        success = 0;
    }
    if (email1.length() < 1) {
        Toast.makeText(this, "PLEASE PROVIDE EMAIL", Toast.LENGTH_SHORT)
                .show();
        success = 0;
    }
    if (mobile1.length() < 10) {
        Toast.makeText(this, "MOBILE NUMBERS MUST BE 10 DIGITS LONG",
                Toast.LENGTH_SHORT).show();
        success = 0;
    }
    if (password1.length() < 6) {
        // out of range
        Toast.makeText(this, "PLEASE PROVIDE ATLEAST 6 DIGITS PASSWORD",
                Toast.LENGTH_SHORT).show();
        success = 0;
    }
    if (success == 1) {
        pb.setVisibility(View.VISIBLE);
        new MyAsyncTask().execute(name.getText().toString());
    }
}
private class MyAsyncTask extends AsyncTask<String, Integer, Double> {
    @Override
    protected Double doInBackground(String... params) {
        // TODO Auto-generated method stub
        postData(name1, email1, password1, mobile1);
        return null;
    }
    protected void onPostExecute(Double result) {
        pb.setVisibility(View.GONE);
        Toast.makeText(getApplicationContext(),
                "Account Activated Login To MyGenie", Toast.LENGTH_LONG)
                .show();
        Intent intent = new Intent(RegisterActivity.this,
                LoginActivity.class);
        startActivity(intent);
    }
    protected void onProgressUpdate(Integer... progress) {
        pb.setProgress(progress[0]);
    }
    public void postData(String name, String email, String password,
            String mobile) {
        // Create a new HttpClient and Post Header
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost(
                "http://www.mygenie.me/json/json.php");
        try {
            // Add your data
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
            nameValuePairs.add(new BasicNameValuePair("name", name));
            nameValuePairs.add(new BasicNameValuePair("email", email));
            nameValuePairs
                    .add(new BasicNameValuePair("password", password));
            nameValuePairs.add(new BasicNameValuePair("mobile", mobile));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            // Execute HTTP Post Request
            HttpResponse response = httpclient.execute(httppost);
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
        } catch (IOException e) {
            // TODO Auto-generated catch block
        }
    }
}

}

您可以在这里看到。您想要从android 向服务器发送数据的确切内容