php - MYSQL 帖子未出现

标签 php android mysql database amazon-web-services

我认为我的代码中没有任何弃用的内容,当我运行 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/

相关文章:

php - 在新订单电子邮件通知中显示客户 IP 地址

php - 如何让 PHP 类构造函数调用其父级的父级构造函数?

android - 如何为 Jellybean (API 17) 创建一个有效的 AVD?

PHP preg_replace 单行,忽略多行可能吗?

php - 使用 tomcat 运行 php 应用程序?

php - 无法通过套接字 '/var/run/mysqld/mysqld.sock' 连接到本地 MySQL 服务器 (13)

mysql - 链接服务器更新mysql不工作

php - 将搜索或过滤器应用于带分页的表

android - 异步任务返回空指针

android - ViewPager 阻止加载下一个 View