来自 JSON 对象的数据未插入到 PHP Foreach 循环中的 MySQL 中


data from a json object not inserting into mysql in php foreach loop

我正在尝试使用

foreach ($feed->items as $item) {
  $query = "insert into data(id,url,keyword)values ($item->id, $item->url,$item->kind)";
  $result = mysql_query($query);
  echo $result;
}

我已经确认数据库详细信息正常,$items正确。
谁能指出我正确的方向?我对PHP相当陌生,所以任何帮助都值得赞赏。

您需要转义 SQL 中的值:

$query = "insert into data(id,url,keyword)values ('" . mysql_real_escape_string($item->id) . "', '" . mysql_real_escape_string($item->url) . "' , '". mysql_real_escape_string($item->kind) . "')";
  1. 这会在变量周围添加引号',以便可以完全解析 SQL
  2. 这可以防止 SQL 注入。
您需要将

变量包装在查询中:

$query = "insert into data(id,url,keyword)values ('{$item->id}', '{$item->url}', '{$item->kind}')";