我们在我所在的城镇举办了一场小型竞赛,我们需要使用 Ajax 将本地存储 key 存储到 MySQL 中。
通过做这个项目,我发现了一些问题。
这是我的本地存储键和值:
键:BM
值:
[{"id":"item-1","icon":"google.com"},
{"id":"item-3","icon":"tumblr.com"},
{"id":"item-5","icon":"youtube.com"}]
所以基本上它的id:ID,图标:URL,两者都可以是随机的。
当我使用 Ajax 将其存储到 MySQL 中时,该值更改为:
[{\"id\":\"item-1\",\"icon\":\"google.com\"},
{\"id\":\"item-3\",\"icon\":\"tumblr.com\"},
{\"id\":\"item-5\",\"icon\":\"youtube.com\"}]
该行的结构是长文本。我尝试过纯文本,但结果是一样的。
我想听听更有经验的开发人员的其他想法,您会如何做。
本地存储值添加并使用 JSON 进行解析。
最佳答案
看起来 php 在插入数据之前会在您的输入中添加斜杠。这可能是由 magicquotes 引起的。看看:http://php.net/manual/en/security.magicquotes.php
如果是这种情况,解决方案是关闭 php 中的 magicquotes 或使用 stripslashes()
<?php
// Assuming your input is in the input variable
$input = stripslashes($_GET['input']);
mysql_query("insert into `table` ( `columnname` ) values( '" . mysql_real_escape_string($input) . "' )");
?>
关于php - 将本地存储 key 保存到 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9674305/