Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]PDO - wyswietlenie rekordow
Forum PHP.pl > Forum > Przedszkole
klapaucius
Pobrać rekordy z bazy danych za pomocą klasy PDO możemy w ten sposob:
  1. $zapytanie = $baza->query('SELECT * FROM tabela');
  2. foreach($zapytanie as $dane){
  3. echo $dane['jakas_tam_kolumna'];
  4. }

Ale czy za każdym razem muszę wywoływać pętlę foreach? Dlaczego np. gdy próbuję zrobic cos takiego:
  1. $zapytanie = $baza->query('SELECT * FROM tabela');
  2. echo $zapytanie[0]['jakas_tam_kolumna']

otrzymuję komunikat:
Kod
Fatal error: Cannot use object of type PDOStatement as array in
b4rt3kk
A co wyświetli taki kod?

  1. $zapytanie = $baza->query('SELECT * FROM tabela');
  2. print_r($zapytanie);
klapaucius
yy no takie cos:
Kod
PDOStatement Object ( [queryString] => SELECT * FROM tabela )

czyli ze co... Ta zmienna jest obiektem. No ok. Czyli nie ma innego wyjścia jak tylko użycie foreach, tak?
b4rt3kk
  1. $zapytanie = $baza->query('SELECT * FROM tabela');
  2. $row = $zapytanie -> fetch_row();
  3. print_r($row);


A takie coś?
viking
Byłeś na stronie dokumentacji http://php.net/manual/en/pdo.query.php ? Jest przykład jak to powinno wyglądać. Skoro każdy wiersz tabeli jest obiektem jak według ciebie ma być to zrobione?
klapaucius
Cytat(viking @ 2.10.2012, 16:16:05 ) *
Byłeś na stronie dokumentacji http://php.net/manual/en/pdo.query.php ? Jest przykład jak to powinno wyglądać. Skoro każdy wiersz tabeli jest obiektem jak według ciebie ma być to zrobione?

Nie wiem.. Np. jakaś funkcja, która by mi te wszystkie obiekty wrzuciła do jakiejś tablicy.

Jeszcze 2 pytanko: jak sprawdzić czy dane zapytanie przebiegło bez błędu?
viking
Cytat
PDO::query ? Executes an SQL statement, returning a result set as a PDOStatement object

Patrzysz w http://www.php.net/manual/en/class.pdostatement.php i masz fetch, fetchAll, fetchColumn, fetchObject. Przy okazji poczytaj też o http://www.php.net/manual/en/pdo.prepare.php

Objąć blokiem try/catch i przechwycić wyjątek ad2 pytania.

Możesz też poczytać http://wwwgo.pl/article/10/php_data_object...luge_baz_danych
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.