FetchAll on bool statement

FetchAll on bool statement
CodeRZ
  • Rejestracja:ponad 6 lat
  • Ostatnio:7 dni
  • Postów:259
0

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

Kopiuj
        $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.

serek
  • Rejestracja:około 11 lat
  • Ostatnio:około 2 godziny
  • Postów:1475
2

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

Lukasz Formela
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 5 lat
  • Postów:3
1
CodeRZ napisał(a):
Kopiuj
        $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:

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

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


PHP, MySQL, JS. Obecnie Anglia, rozważam relokację do Warszawy.
CodeRZ
Tak, jest za dużo o jeden. Kod już działa, ale dzięki :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.