成功我得到了wpdb->准备最终工作,我很乐意在这里分享我的代码片段——希望其他人会发现这很有用。
My Situation
我试图从正在编写的插件中将数据从提要导入到自定义表中。一些网站甚至回复此帖子的人都鼓励我保护我的导入查询。然而,即使在阅读了抄本之后,我也无法正确地或根本无法做到这一点。
Noteworthy Mistakes
我做错的几件事是:
将所有值拉入数组。我根本不需要这样做我试图只使用一个wpdb->prepare导入多行值。解决方案是使用一个wp db->每行准备。我将wpdb->prepare命令移到了foreach语句中。问题是,有时我会得到一个以上的结果,我想在同一时间导入,这就做到了。我永远不会有超过20个结果,所以这应该很好
A Solution
这可能不是唯一的方法,但这是我成功的方法。下面是最后一段工作代码。我在我的foreach声明中提到了这一点。希望有帮助。
foreach ($rows as $row) {
// I\'ve omitted the part in my where i take all of the values from the query and define variables, but that part would happen here.
// Prepare query
$sql = $wpdb->prepare("
INSERT INTO $tablename (`ijAuthorID`, `ijDate`, `ijDescription`, `ijTitle`, `ijSlug`, `ijPostType`, `ijImported`, `ijUKID`)
VALUES (%d, %s, %s, %s, %s, %s, %s, %s) ON DUPLICATE KEY UPDATE ijImported = 1",
$tAuthor, $tPubDate, $tContent, $tTitle, $tPostName, $tPostType, $tImported, $tID
);
// Execute query
$wpdb->query($sql);
}
感谢那些回复我原来帖子的人。