FetchAll on bool statement

0

Hej, krótki problem otóż mam kod:

        $title = "test";
        $sql = "SELECT `title` FROM `offers` WHERE `title`= \":title\"";";
        print_r($sql);
        $stmt = $conn->prepare($sql);
        $stmt = $stmt->execute([
            ":title"=>$title
        ]);
        $results = $stmt->fetchAll(PDO::FETCH_ASSOC);

który wypluwa mi Fatal error: Uncaught Error: Call to a member function fetchAll() on bool in C:\xampp\htdocs\zadanie\download.php:25 Stack trace: #0 {main} thrown in C:\xampp\htdocs\zadanie\download.php on line 25 jednak nie powinno tu być bool a wyniki. Dane w tabeli nie mają znaczenia, po prostu kod sie nie wykonuje.

2

execute zwraca bool. I nadpisuejsz $smtp, więc po prostu usuń to nadpisanie.

1
CodeRZ napisał(a):
        $sql = "SELECT `title` FROM `offers` WHERE `title`= \":title\"";";

Czy to jest bezpośrednio skopiowane z Twojego kodu? Wygląda jakby o jeden cudzysłów za dużo. Obecnie SQL wyglądałby tak:

SELECT `title` FROM `offers` WHERE `title`="title"";

co może zwracać błąd i w efekcie bool zamiast wyniku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1