[Postgres][PHP] Jak wypisać na ekranie w PHP zawartość dowolnej tabeli?
Chcesz wykonać dowolne zapytanie SQL (np. pobrać zawartość całej tabeli) i wypisać wynik zapytania (czyli zawartość rekordów) na ekranie.
To chyba najczęściej wykorzystywany fragment kodu w komunikacji z bazą danych. Pozwala wynik zapytania SQL wypisać na ekranie w postaci rekordów z tabeli. Oto gotowy kod programu:
<?
$pyt="SELECT * FROM pracownicy";
$baza = pg_Connect("dbname=jakasbaza port=5432 user=uzytkownik");
$wynik = pg_Exec($baza, $pyt);
pg_close($baza);
$ile = pg_numrows($wynik);
for ($i=0;$i<$ile;$i++) {
$rekord = pg_fetch_row($wynik, $i);
for ($j=0; $j<count($rekord); $j++) {
echo "$rekord[$j] ";
}
echo "<br>";
}
?>
Pytaniem SQL jest tutaj pobranie zawartości całej tabeli o nazwie pracownicy. Następnie za pomocą pg_numrows() pobieramy ilość rekordów jakie pasują do pytania SQL, w naszym wypadku sa to wszystkie rekordy z bazy, bo wybraliśmy całą bazę.
Każdy rekord zostaje następnie pobrany za pomocą pg_fetch_row() i wypisany na ekran po dodaniu odstępu. Po każdym rekordzie dodawane jest też przejście do nowej lini <br>.