0

我正在使用一个表单从 Amazon 检索信息,然后将该信息插入到 MySQLi 表中。我的问题是某些记录可以完美插入,而另一些则根本不会插入。这是要插入到表中的查询(是的,我知道它对于 sql 注入是完全开放的,但我需要让它正常工作,然后才能使其成为网络安全):

    $conn->query("INSERT INTO video (upc, title, manufacturer, rating, platform, weight, listed_price, release_date, asin, image)
    VALUES ('$upc', '" . addslashes($amazonResult['Title']) . "', '" . addslashes($amazonResult['Author']) . "', '" . $amazonResult['Rating'] . "',
         '" . $amazonResult['Platfrom'] . "', " . $amazonResult['Weight'] . "," . $amazonResult['ListPrice'] . ",
         '" . $amazonResult['PublishDate'] . "', '$asin','" . addslashes($amazonResult['ImageURL']) . "' )");

据我所知,没有产生任何错误。对此问题的任何帮助将不胜感激。

4

1 回答 1

1

是的,我知道它对于 sql 注入是开放的,但我需要让它正常工作,然后才能使它成为网络安全

你做的是颠倒的。
注入只是代码格式不正确的结果。
因此,您的插入问题很可能是同一来源。

因此,如果您正确地格式化您的代码,您将同时实现这两个目标。

据我所知,没有产生任何错误。

您必须向 mysqli 询问它们。
至少以这种方式运行所有查询

$sql = "..."
$conn->query($sql) or trigger_error($conn->error."[$sql]");

通知错误和问题查询。

于 2012-12-26T16:39:57.077 回答