我从一个网站得到json数据。但是在数据中有一个单引号导致了这个问题。你会建议我做什么我已经尝试str_replace不工作,请帮助
代码
$string=file_get_contents('http://website');
$string=str_replace("'", "''", $string);//not working
$json=json_decode($string);
foreach($json as $p)
{
$query="INSERT INTO abc(id,
name,
address,
address2,
storeID,
) VALUES('$p->id',
'$p->name',
'$p->address',
'$p->address2',
'$p->storeID',
)";
mysql_query($query) or die(mysql_error());
}
如果我使用str_replace,这个错误会出现
Warning: Invalid argument supplied for foreach()
用单引号代替单引号。相反,您需要:
$string = str_replace("'", '"', $string);
同样,不能在SQL语句中插入用户输入。使用准备好的语句或对用户输入进行编码。
$string = str_replace("'", '"', $string);