gpt4 book ai didi

php - MYSQL 帖子未出现

转载 作者:行者123 更新时间:2023-12-01 00:03:44 24 4
gpt4 key购买 nike

我认为我的代码中没有任何弃用的内容,当我运行 PHP 脚本时我获得了成功,但数据库中没有显示任何内容。这是 PHP 代码。

<?php include "../inc/dbinfo.inc"; ?>
<?php

$connect = new mysqli("DB_SERVER","DB_USERNAME","DB_PASSWORD","DB_DATABASE");

if(!$connect){
die('error');
}
else
{
echo "success";
}

$username = isset($_POST['username']) ? $_POST['username'] : '';
$password = isset($_POST['password']) ? $_POST['password'] : '';
$givenname = isset($_POST['givenname']) ? $_POST['givenname'] : '';
$email = isset($_POST['email']) ? $_POST['email'] : '';
$phonenumber = isset($_POST['phonenumber']) ? $_POST['phonenumber'] : '';


$sql = "INSERT INTO test(username,password,givenname,email,phonenumber) VALUES ('$username', '$password', '$givenname', '$email', '$phonenumber')";

mysqli_close($connect);
?>

这是 Android 代码。

 private void insertToDatabase(){
class SendPostReqAsyncTask extends AsyncTask<String, Void,String >
@Override
protected String doInBackground(String... params) {
String paramUsername = params[0];
String paramPassword = params[1];
String paramGivenname = params[2];
String paramEmail = params[3];
String paramPhonenumber = params[4];




List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("username", username.getText().toString()));
nameValuePairs.add(new BasicNameValuePair("password", password.getText().toString()));
nameValuePairs.add(new BasicNameValuePair("givenname", givenName.getText().toString()));
nameValuePairs.add(new BasicNameValuePair("email", email.getText().toString()));
nameValuePairs.add(new BasicNameValuePair("phonenumber", phone.getText().toString()));


try {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(Constantss.DB_DNS);
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "success";
}



@Override
protected void onPostExecute(String result){
super.onPostExecute(result);
Toast.makeText(getApplicationContext(),result,Toast.LENGTH_LONG).show();
}

}


SendPostReqAsyncTask sendPostReqAsyncTask = new SendPostReqAsyncTask();
// sendPostReqAsyncTask.execute(uname,pword, gname, lmail,pnumb);
}

我从 Android 代码中获取成功,但数据库表中没有任何内容。有谁知道这个问题?谢谢!

最佳答案

您没有执行查询。

所以使用:

mysqli_query($connect, $sql); 并检查它的错误。

引用资料:

由于给出了另一个答案并且我已经在评论中首先指出了这一点,所以我们澄清一下。

您还对 sql 注入(inject)持开放态度。使用准备好的语句:

关于php - MYSQL 帖子未出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38727012/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com