php - 将 JSON 数组从 Android 应用程序发送到 PHP

标签 php android mysql json sqlite

我正在尝试将 SQLite 数据库同步到 MySQL 服务器,似乎这样做的方法是将 SQLite 数据库转换为 JSON 文件,然后将其发送到 PHP 以将其写入数据库。 我创建了这个 php 文件来接受 JSON 数据:

<?php
include 'databaseconnect.php';
$jsonInput = $_POST['json'];
echo $jsonInput;
$data = json_decode($jsonInput);
foreach($data as $inv){
    $id = $inv->id;
    $inMillis = $inv->inMillis;
    $outMillis = $inv->outMillis;
    $complete = $inc->complete;
    $sql = "INSERT INTO history (id, inMillis, outMillis, complete) VALUES ('$id', '$inMillis', '$outMillis', '$complete')";
    $res = mysqli_query($conn, $sql);
}
?>

我还设法将 android 端的数据转换为 JSON 格式:

[{"ID":"1","INMILLIS":"1474045680982","OUTMILLIS":"1474046580983","COMPLETE":"1"}]

我现在真的很难将这些数据发送到 PHP 文件,而且我可以在网上找到的所有解决方案都不起作用。我想知道是否有人可以帮助我找到解决方案? 谢谢!

最佳答案

echo "<pre>";

$jsonInput = '[{"ID":"1","INMILLIS":"1474045680982","OUTMILLIS":"1474046580983","COMPLETE":"1"}]'; 
$data = json_decode($jsonInput,true);

foreach($data as $inv){
    $id = $inv['ID'];
    $inMillis = $inv['INMILLIS'];
    $outMillis = $inv['OUTMILLIS'];
    $complete = $inv['COMPLETE'];
    $sql = "INSERT INTO history (id, inMillis, outMillis, complete) VALUES ('$id', '$inMillis', '$outMillis', '$complete')";

    echo $sql."\n";

}

转换数组中的json $data = json_decode($jsonInput,true); 并用foreach循环

输出:INSERT INTO history (id, inMillis, outMillis, complete) VALUES ('1', '1474045680982', '1474046580983', '1')

关于php - 将 JSON 数组从 Android 应用程序发送到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39537593/

相关文章:

php - mysql_fetch_array 只返回第一列

php - 使用 foreach 分解字符串并插入多行太慢

java - ER 建模中的常见错误?

android - 检查 SQL 查询是否在 Android SQLite 上成功

java - LibGDX android在屏幕中生成随机位置

Windows 10 更新后 MySql 5.7 服务无法启动

php - XAMPP 没有在 XP 上启动 Apache

java - android 通过手指触摸屏幕删除线条

php - 将 php 变量 'foobar' 与 mysql 中的 'Foo Bar' 匹配

mysql - 如何在Mysql中转义正则表达式中的特殊SQL字符