Zwracam się z prośbą o pomoc. Piszę sobie mini portal, w którym chcę wyszukiwać pewne informacje przez formularz czyli standardowa wyszukiwarka. Wszystko staram się pisać w stylu zgodnym z PDO ... no i tu rodzi się problem. Mam w klasie taką funkcję:
public function search($title) { $stmt = $this->pdo->prepare("SELECT * FROM `articles` WHERE `title` LIKE :title ORDER BY `id` DESC LIMIT 15"); $title = "%".$title."%"; $stmt->bindValue(':title', $title, PDO::PARAM_STR); $stmt->execute(); while ($resource = $stmt->fetch(PDO::FETCH_ASSOC)) { $this->title[] = $resource; } $stmt->closeCursor(); return $this->title; }
którą na stronie wywołuję tak:
$main->search($_POST['title']); }
jednak to kompletnie nie działa... wcześniej wywołuję funkcję która pobiera wszystkie artykuły i mimo że cokolwiek wpisuję w pole wyszukiwania to nie znajduje mi nic, chociaż są wpisy o takich tytułach jak podaję. Starałem się przeprowadzić analizę błędów poprzez jakieś komunikaty - nic nie pomaga. Wygląda na to, że wszystko ładnie przechodzi przez funkcję ale nie zwraca żadnych wyników ? Czy jest jakiś błąd logiczny w moim bindowaniu parametru ? Przyznam, że nigdy nie pisałem czegoś takiego w PDO, a nie chcę wracać do mysql_*.
Z góry dziękuję za pomoc, pozdrawiam.