From 94177cee799eaf7c493b0fd1137d7eeaec4fd918 Mon Sep 17 00:00:00 2001 From: Jacek Kowalski <Jacek@jacekk.info> Date: Sat, 06 Jul 2019 00:10:00 +0000 Subject: [PATCH] Fix edge cases (no results, query empty) in find function --- stops/populate_db.php | 18 +++++++++++------- 1 files changed, 11 insertions(+), 7 deletions(-) diff --git a/stops/populate_db.php b/stops/populate_db.php index 3364d2d..845ec95 100644 --- a/stops/populate_db.php +++ b/stops/populate_db.php @@ -9,17 +9,21 @@ $pdo->query('DROP TABLE IF EXISTS stop_search'); $pdo->query('CREATE TABLE stop_search ( word VARCHAR(60), - id INT + id VARCHAR(255) )'); + +function processStops($st, $stops) { + foreach($stops as $id => $name) { + foreach(split_stop_name($name) as $word) { + $st->execute([$word, $id]); + $st->closeCursor(); + } + } +} $pdo->beginTransaction(); $st = $pdo->prepare('INSERT INTO stop_search (word, id) VALUES (?, ?)'); -foreach($stops as $id => $name) { - foreach(split_stop_name($name) as $word) { - $st->execute(array($word, $id)); - $st->closeCursor(); - } -} +processStops($st, $stops); $pdo->commit(); $pdo->query('CREATE INDEX stop_search_word ON stop_search (word COLLATE NOCASE)'); -- Gitblit v1.9.1