插入PHP数组作为MYSQL列
I am trying to add dynamic array values from two arrays into mysql table as columns, several rows at a time. I have created a loop for that.
When I run it it produces an error, stating that I have an error in MYSQL syntax. When I try to run the query statement that is produced directly in phpMyAdmin it runs fine. So the syntax shouldn't be an issue. Thanks for any help.
我试图将两个数组中的动态数组值作为列添加到mysql表中,每次添加几行。我为此创建了一个循环。当我运行它时,它会产生一个错误,说明我在MYSQL语法中有一个错误。当我尝试运行直接在phpMyAdmin中生成的查询语句时,它运行良好。所以语法不应该是问题。感谢任何帮助。
function addSystemDataTanks ($db, $tankNamesArray, $tankVolumesArray)
{
global $tankNamesArray;
global $tankVolumesArray;
global $noOfTanks;
$statement = "replace into tanks (TANK_NAME, TANK_VOLUME) ";
$statement .= "values ";
for ($i = 0; $i < $noOfTanks; $i++) {
$statement.= "('".$tankNamesArray[$i]."', '".$tankVolumesArray[$i]."'), ";
}
$statement.= rtrim($statement, ',');
$result = mysqli_query($db, $statement);
if ($result)
{
return true;
}else{
$errno = mysqli_errno($db);
echo "{h4}MySQL Error No: ".mysqli_errno($db)."</h4>";
echo "{h4}MySQL Error: ".mysqli_error($db)."</h4>";
echo "{h4}SQL: ".$statement."</h4>";
echo "{h4}MySQL Affected Rows: ".mysqli_affected_rows($db)."</h4>";
}
return 'NotAdded';
}
1 个解决方案
#1
0
I see two problems so far:
到目前为止,我看到了两个问题:
First: where are you assigning a value to
$noOfTanks
? yourfor
loop depends on that value, however, i don't see it being assigned which means it is currently resulting inNULL
, thus your loop not iterating.首先:你在哪里为$ nooftank赋值?你的for循环依赖于那个值,但是,我没有看到它被赋值,这意味着它当前导致NULL,因此你的循环没有迭代。
Second: This line
$statement .= rtrim($statement, ',');
is concatenating to the original$statement
variable thus ending up with this:第二:这行$statement .= rtrim($statement, ',');连接到原始的$statement变量,从而得到以下结果:
'REPLACE INTO tanks (TANK_NAME, TANK_VOLUME) values REPLACE INTO tanks (TANK_NAME, TANK_VOLUME) values '
I'm assuming you want to re-assign after your
trim
, in that case do this:我假设你想要重新分配后,你的修剪,在这种情况下,这样做:
$statement = rtrim($statement, ',');
更多相关文章
- PHP 5.0 到 7.1 常用语法糖(个人整理)
- 解析错误:语法错误,第12行/home/public_html/gigs.html中的意外T_L
- PHP解析错误:语法错误,意外的T_VARIABLE
- 可以在SELECT语句中嵌入描述语法吗?
- mysql语法之case when then与列转行
- MySQL数据库语法-多表查询练习一
- 语法错误:从[{id}]开始的表达式[{id}]第2列的令牌'{'无效键?
- Javascript语法中null与“”的误写导致长期困扰的问题终于解决了
- JavaScript学习笔记--语法