2016-05-04 122 views
0

我正在尝试将PHP插件与我的web应用程序集成,但我坚持将从XML文件接收到的值存储到数据库中的表中。无法将序列化的XML数组插入数据库(MySQLi)

这是我到目前为止,但是当我运行PHP脚本它不保存到数据库。我创建了一个表在我的数据库有一列(类型=文本,名称=测试)

global $mysqli; 

    $str = serialize($Items); 
    printF($str); 
    $result = $mysqli->query("INSERT INTO nepremicnine (test) VALUES ('$str');"); 
+0

您是否检查了错误日志?你假设查询正在工作。 –

+0

您的结果语句末尾还有一个额外的分号。日志会显示这一点。 '('$ str');“);' – Brian

回答

2

$Items可能包含一些字符串用单引号,当你用它替换成INSERT这是造成语法错误查询。使用准备好的语句来避免特殊字符的问题。

$stmt = $mysqli->prepare("INSERT INTO nepremicnine (test) VALUES (?);"); 
$stmt->bind_param("s", $str); 
$result = $stmt->execute(); 
+0

这是正确的,对于迟到的批准抱歉,但你的解决方案帮助我:) – Svedr