0

私は Android を初めて使用し、PHP と MySQL を使用してアプリケーションを開発しています。デバイスから PHP スクリプトにデータを送信し、そのデータをデータベースに追加しようとしていますが、データベースに追加されたデータは null です。私はエミュレーターではなく、Android デバイスでのみ作業しています。ここに私のPHPとJavaコードがあります:

$dbHost = "localhost";
$dbName = "emergency_db";
$dbUser = "root";
$dbPassword = "";

$connect = mysql_connect($dbHost, $dbUser, $dbPassword) or die ("Connection error"); // connects to database
mysql_select_db($dbName) or die ("Database selection error"); // selects the database

$username=$_POST['username'];
$password=$_POST['password'];
$name=$_POST['name'];
$email=$_POST['email'];

mysql_query("INSERT INTO USERS(Username, Password, Name, Email)VALUES('$username', '$password', '$name' , '$email')");

mysql_close($connect);

try {
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://localhost/register.php");
    List<NameValuePair> params = new ArrayList<NameValuePair>(4);
    params.add(new BasicNameValuePair("username", username ));
    params.add(new BasicNameValuePair("name", name));
    params.add(new BasicNameValuePair("email", email));
    params.add(new BasicNameValuePair("password", password));
    httppost.setEntity(new UrlEncodedFormEntity(params));
    HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
    // TODO Auto-generated catch block
} catch (IOException e) {
    // TODO Auto-generated catch block
}  
4

1 に答える 1

0

を使用しmysqliます。の使用mysqlは推奨されなくなりました。

一般的なネットワークでテストする場合は、http://192.168.xxx.xxx/register.php代わりに使用する必要があります。http://localhost/register.php

これであなたを置き換えますmysql_query

mysqli_query($connect,"INSERT INTO test (name,age,email) VALUES ('$name', '$age', '$email');)";
于 2015-06-23T18:43:01.513 に答える