diff options
author | Andrew Dolgov <[email protected]> | 2018-04-03 13:57:27 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2018-04-03 13:57:27 +0300 |
commit | 963c22646b3e1bd544bd957bf34175b996bd6e53 (patch) | |
tree | 3fcde89e6ead0b083330dc38c67c261939dd81e9 | |
parent | 4fa64e8446563a89f04badfdfecc8a57750c083d (diff) |
pass tsvector data as a named parameter on article update, remove escaping hacks
-rwxr-xr-x | classes/rssutils.php | 25 | ||||
-rwxr-xr-x | update.php | 8 |
2 files changed, 15 insertions, 18 deletions
diff --git a/classes/rssutils.php b/classes/rssutils.php index d125a5032..f06cb085e 100755 --- a/classes/rssutils.php +++ b/classes/rssutils.php @@ -978,18 +978,10 @@ class RSSUtils { _debug("resulting RID: $entry_ref_id, IID: $entry_int_id", $debug_enabled); - if (DB_TYPE == "pgsql") { - $tsvector_combined = mb_substr($entry_title . ' ' . - preg_replace('/[<\?\:]/', ' ', strip_tags($entry_content)), - 0, 1000000); - - $tsvector_qpart = "tsvector_combined = to_tsvector(".$pdo->quote($feed_language).", ".$pdo->quote($tsvector_combined)."),"; - - } else { + if (DB_TYPE == "pgsql") + $tsvector_qpart = "tsvector_combined = to_tsvector(:ts_lang, :ts_content),"; + else $tsvector_qpart = ""; - } - - //_debug($tsvector_qpart); $sth = $pdo->prepare("UPDATE ttrss_entries SET title = :title, @@ -1003,7 +995,7 @@ class RSSUtils { lang = :lang WHERE id = :id"); - $sth->execute([":title" => $entry_title, + $params = [":title" => $entry_title, ":content" => "$entry_content", ":content_hash" => $entry_current_hash, ":updated" => $entry_timestamp_fmt, @@ -1011,7 +1003,14 @@ class RSSUtils { ":plugin_data" => $entry_plugin_data, ":author" => "$entry_author", ":lang" => $entry_language, - ":id" => $ref_id]); + ":id" => $ref_id]; + + if (DB_TYPE == "pgsql") { + $params[":ts_lang"] = $feed_language; + $params[":ts_content"] = mb_substr(strip_tags($entry_title . " " . $entry_content), 0, 1000000); + } + + $sth->execute($params); // update aux data $sth = $pdo->prepare("UPDATE ttrss_user_entries diff --git a/update.php b/update.php index 99f4a59dc..553175c8c 100755 --- a/update.php +++ b/update.php @@ -366,13 +366,11 @@ while (true) { while ($line = $sth->fetch()) { - $tsvector_combined = mb_substr($line['title'] . ' ' . - preg_replace('/[<\?\:]/', ' ', strip_tags($line['content'])), - 0, 1000000); + $tsvector_combined = mb_substr(strip_tags($line["title"] . " " . $line["content"]), 0, 1000000); - $usth->execute([$tsvector_combined, $line['id']]); + $usth->execute([$tsvector_combined, $line['id']]); - $processed++; + $processed++; } print "Processed $processed articles...\n"; |