首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在php中将Array字段插入mysql中

问在php中将Array字段插入mysql中
EN

Stack Overflow用户
提问于 2014-06-26 02:34:33
回答 2查看 78关注 0票数 0

当我将这种类型的数组值直接插入Mysql数据库时,会出现如下错误

#1064 -您的SQL语法有错误;请检查与您的MySQL服务器版本相对应的手册,以便在第1行正确使用“23:09Z,36840bd430637,成功”,85.0,11457922,10.02,美元,X,M,59106737WV 831‘。

我的查询是

代码语言:javascript
复制
 INSERT INTO `transaction`(TIMESTAMP, CORRELATIONID, ACK, VERSION, BUILD, AMT, CURRENCYCODE, AVSCODE, CVV2MATCH, TRANSACTIONID) VALUES (2014-06-26T02:23:09Z, 36840bd430637, Success, 85.0, 11457922, 10.02, USD, X, M, 59106737WV831451U)

我的代码是

代码语言:javascript
复制
$columns = implode(", ",array_keys($result_array));
$escaped_values = array_map('mysql_real_escape_string', array_values($result_array));
$values  = implode(", ", $escaped_values);
echo $sql = "INSERT INTO `transaction`($columns) VALUES ($values)";
$res =mysql_query($sql);

我能做些什么改变?

EN

回答 2

Stack Overflow用户

发布于 2014-06-26 05:18:35

首先,您应该转义列名(并不总是必需的):

代码语言:javascript
复制
$cols = join(',', array_map(function($name) {
    return '`' . str_replace('`', '``', $name) . '`';
}, array_keys($result_array));

然后,请记住,mysql_real_escape_string()没有添加引用的附件:

代码语言:javascript
复制
$vals = join(',', array_map(function($value) {
    return "'" . mysql_real_escape_string($value) . "'";
}, $result_array);

$sql = "INSERT INTO `transaction` ($cols) VALUES ($vals)";

最后,不推荐使用mysql_函数,您应该继续使用PDO或mysqli。

票数 1
EN

Stack Overflow用户

发布于 2014-06-26 05:05:14

回声$sql在这里的意思是什么?试试这种方法&你也可以先转义你的字符串。

代码语言:javascript
复制
foreach($singleRow as $key=>$data) //for multiple rows
{
 if(isset($data)){
   $dataArray[$key] = is_string($data) ? mysql_real_escape_string($data) : $data;
   }
}

$tableName='transaction';
$keys = implode(',',array_keys($dataArray));
$data_values = ("'".implode("','",array_values($dataArray))."'");
$insertSql = "INSERT INTO ".$tableName." ($keys) VALUES ($data_values)";
$res =mysql_query($insertSql );

use mysqli_* and PDO anyway
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24421526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档