gpt4 book ai didi

php - MySQL 插入空值错误

转载 作者:行者123 更新时间:2023-11-29 07:37:58 25 4
gpt4 key购买 nike

因此,我尝试使用以下代码将数据从包含多个数组的数组插入到 MySQL 表中,这些数组保存表中每一行的数据:

if (is_array($tbl_data)){
$sql = "INSERT INTO teshsting (agent, event , data1,data2,data3,data4,data5) values ";
$arrayValues = array();
foreach ($tbl_data as $row){

$agent = mysql_real_escape_string($row[0]);
$event = mysql_real_escape_string($row[1]);
$data1 = mysql_real_escape_string($row[2]);
$data2 = mysql_real_escape_string($row[3]);
$data3 = mysql_real_escape_string($row[4]);
$data4 = mysql_real_escape_string($row[5]);
$data5 = mysql_real_escape_string($row[6]);

$value = "($agent,$event,$data1,$data2,$data3,$data4,$data5)";
array_push($arrayValues, $value);
}
$sql .=implode(',', $arrayValues);

使用 var_dum($sql) 进行快速检查会产生以下结果:

INSERT INTO teshsting (agent, event , data1,data2,data3,data4,data5) values (NONE,QUEUESTART,,,,,)/////

由于此处的多个逗号:(NONE,QUEUESTART,,,,,)由空字段生成,因此上述 Sql 无效。如何在查询中插入单引号以使其有效?即正确的sql语法:

INSERT INTO teshsting (agent, event , data1,data2,data3,data4,data5) values (NONE,QUEUESTART,'','','','','')

最佳答案

或者:

$data1 = "'" . mysql_real_escape_string($foo) . "'";

$value = "(...,'$data1',...)";

只是不要尝试这两个选项,这会给你 (...,''$data1'',...) 并终止带有语法错误的查询。

关于php - MySQL 插入空值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30057076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com