From 96930889ddee42be73ded360aea865ccda0b85c5 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sun, 3 Dec 2017 11:03:09 +0300 Subject: [PATCH] plugins/cache_starred_images: use PDO --- plugins/cache_starred_images/init.php | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/plugins/cache_starred_images/init.php b/plugins/cache_starred_images/init.php index 82e7d1fbd..6c32ff57f 100644 --- a/plugins/cache_starred_images/init.php +++ b/plugins/cache_starred_images/init.php @@ -1,6 +1,7 @@ pdo->prepare("SELECT id FROM ttrss_entries WHERE id = ?"); + $sth->execute([$article_id]); - $article_exists = db_num_rows($result) > 0; + $article_exists = $sth->fetch(); } if (!$article_exists) { @@ -135,7 +136,7 @@ class Cache_Starred_Images extends Plugin implements IHandler { } function hook_update_task() { - $result = db_query("SELECT content, ttrss_user_entries.owner_uid, link, site_url, ttrss_entries.id, plugin_data + $res = $this->pdo->query("SELECT content, ttrss_user_entries.owner_uid, link, site_url, ttrss_entries.id, plugin_data FROM ttrss_entries, ttrss_user_entries LEFT JOIN ttrss_feeds ON (ttrss_user_entries.feed_id = ttrss_feeds.id) WHERE ref_id = ttrss_entries.id AND @@ -145,14 +146,16 @@ class Cache_Starred_Images extends Plugin implements IHandler { plugin_data NOT LIKE '%starred_cache_images%' ORDER BY ".sql_random_function()." LIMIT 100"); - while ($line = db_fetch_assoc($result)) { + $usth = $this->pdo->prepare("UPDATE ttrss_entries SET plugin_data = ? WHERE id = ?"); + + while ($line = $res->fetch()) { if ($line["site_url"]) { $success = $this->cache_article_images($line["content"], $line["site_url"], $line["owner_uid"], $line["id"]); if ($success) { - $plugin_data = db_escape_string("starred_cache_images,${line['owner_uid']}:" . $line["plugin_data"]); + $plugin_data = "starred_cache_images,${line['owner_uid']}:" . $line["plugin_data"]; - db_query("UPDATE ttrss_entries SET plugin_data = '$plugin_data' WHERE id = " . $line["id"]); + $usth->execute([$plugin_data, $line['id']]); } } }