Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法从PHP脚本在MySQL中插入数据_Php_Mysql - Fatal编程技术网

无法从PHP脚本在MySQL中插入数据

无法从PHP脚本在MySQL中插入数据,php,mysql,Php,Mysql,我正在尝试使用下面的代码在MySQL数据库中插入json数据,但是得到的值像Array[0][0],0.000等等。有人能建议一个解决方案吗 变量中的值是正确的,因为回音输入循环正在浏览器中显示正确的值 谢谢 [编辑] “add”的数据类型是varchar,对于“SN”,“imm”的int和rest都是double [/编辑] for($x=0; $x<$totaladdress; $x++) { echo $x; echo "<br>add="; echo $json_a[r

我正在尝试使用下面的代码在MySQL数据库中插入json数据,但是得到的值像Array[0][0],0.000等等。有人能建议一个解决方案吗

变量中的值是正确的,因为回音输入循环正在浏览器中显示正确的值

谢谢

[编辑]

“add”的数据类型是varchar,对于“SN”,“imm”的int和rest都是double

[/编辑]

for($x=0; $x<$totaladdress; $x++)
{
echo $x;
echo "<br>add=";
echo $json_a[report][$x][0];


$sql = "INSERT INTO `report`.`tempmain` (`SN`, `add`, `last`,`imm`, `lastH`, `pa`, `unex`, `meg`, `bi`, `re`) VALUES (NULL, '$json_a[report][$x][0]','$json_a[report][$x][1][last]', '$json_a[report][$x][1][imm]', '$json_a[report][$x][1][lastH]', '$json_a[report][$x][1][pa]', '$json_a[report][$x][1][unex]', '$json_a[report][$x][1][meg]', '$json_a[report][$x][1][bi]', '$json_a[report][$x][1][re]');";
$result=mysql_query($sql);
}
$x=0;$x的

正在以数组形式插入
$json\u a
,而不解释其余部分。请尝试:

$sql = "INSERT INTO `report`.`tempmain` (`SN`, `add`, `last`,`imm`, `lastH`, `pa`, `unex`, `meg`, `bi`, `re`) VALUES (NULL, '".$json_a['report'][$x][0]."','".$json_a['report'][$x][1]['last']."', '".$json_a['report'][$x][1]['imm']."', '".$json_a['report'][$x][1]['lastH']."', '".$json_a['report'][$x][1]['pa']."', '".$json_a['report'][$x][1]['unex']."', '".$json_a['report'][$x][1]['meg']."', '".$json_a['report'][$x][1]['bi']."', '".$json_a['report'][$x][1]['re']."');";
也就是说,不是做:

$sql = "some sql $json_a[report][$x][1][pa] other sql"


尝试回显生成的$SQL。可能会帮助您找到问题,并帮助我们了解发生了什么情况,检查
错误或死亡(mysql_error());
。在数组键为字符串的位置引用数组键。“$json_a[report][$x][1][last]”应该变成
“$json_a['report'][$x][1]['last']”“
例如,你能将$json转储吗?如果你的一个变量包含
,你的查询将失败,因为没有转义。用准备好的语句切换到mysqli或PDO。为了现在进行调试,你可以尝试将
mysql\u查询($sql);
更改为
mysql\u查询($sql)或死亡(mysql\u error());
$sql = "some sql $json_a[report][$x][1][pa] other sql"
$sql = "some sql ".$json_a['report'][$x][1]['pa'] ." other sql";