【问题标题】:Can't post data using mysqli无法使用 mysqli 发布数据
【发布时间】:2018-05-17 10:31:38
【问题描述】:

我正在尝试将数据插入到 mysql 数据库中,但是在某处发生了一些事情并且插入没有发生。

这是我的 php 脚本(init2.php 用于连接,我 100 proc 确保连接成功)

<?php
require "init2.php";
$model = $_POST["model"];
$total = $_POST["total"];
$dangerous = $_POST["dangerous"];
$unrecognised = $_POST["unrecognised"];

$sql = "insert into AndroidDatabase.ReportTable (MODEL,Total_Packages,Dangerous_Packages,Unrecognised) values ('$model',$total,$dangerous,$unrecognised);";

?>

这也是我的安卓代码:

URL url = new URL(REPORT_URL);
            HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
            httpURLConnection.setRequestMethod("POST");
            httpURLConnection.setDoOutput(true);
            OutputStream OS =  httpURLConnection.getOutputStream();
            BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(OS,"UTF-8"));
            String data = URLEncoder.encode("model","UTF-8") + "=" +  URLEncoder.encode(model,"UTF-8") +"&" +
                    URLEncoder.encode("total","UTF-8") + "=" +  URLEncoder.encode(total,"UTF-8") +"&" +
                    URLEncoder.encode("dangerous","UTF-8") + "=" +  URLEncoder.encode(dangerous,"UTF-8") +"&" +
                    URLEncoder.encode("unrecognised","UTF-8") + "=" +  URLEncoder.encode(unrecognised,"UTF-8") ;
            bufferedWriter.write(data);
            bufferedWriter.flush();
            bufferedWriter.close();
            OS.close();
            InputStream IS = httpURLConnection.getInputStream();
            IS.close();

提到这是“数据”,它被缓冲写入:“model=GT-I9505&total=200&dangerous=0&unrecognised=18”

编辑:

这在我硬编码时有效:

<?php
require "init2.php";
$model = "test";
$total = 30;
$dangerous = 30;
$unrecognised = 30;

$sql = "insert into AndroidDatabase.ReportTable (MODEL,Total_Packages,Dangerous_Packages,Unrecognised) values ('$model',$total,$dangerous,$unrecognised)";

if(mysqli_query($con,$sql))
{
echo "success";
}
else
{
echo "error".mysqli_error($con);
}
?>

【问题讨论】:

  • 尝试插入sql的php代码在哪里?
  • 第一个代码示例
  • 第一个代码示例不!只有一个查询!这就是为什么我要问...
  • 我想这就是为什么它没有插入他的数据库哈哈

标签: php android mysql mysqli


【解决方案1】:

跳跳链接很有用

<?php
require "init2.php";
$model = $_POST["model"];
$total = $_POST["total"];
$dangerous = $_POST["dangerous"];
$unrecognised = $_POST["unrecognised"];
$query = "insert into AndroidDatabase.ReportTable (MODEL,Total_Packages,Dangerous_Packages,Unrecognised) VALUES (?,?,?,?)";
$stmt = $con->prepare($query);
$stmt->bind_param("siii", $model,$total,$dangerous,$unrecognised);
$stmt->execute();
$stmt->close();
$con->close();
?>

【讨论】:

    猜你喜欢
    • 2012-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多