Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PostgreSQL][PHP] Funkcja tworząca tabele
Forum PHP.pl > Forum > Przedszkole
mik1982
Chciałbym utworzyć funkcję tworzącą tabelę do której będę mógł wrzucać wyniki wyciągane z postrgres.
Generalnie prawie mi się udało ale niestety przy trzech rekordach w bazie wyświetla w tabelce 3xpierwszy rekord.

Poniżej kod pliku funkcje.php
  1. <?
  2. function tabela() {
  3.  
  4. global $ile_kol;
  5. global $wynik;
  6. global $zgl_ile;
  7.  
  8. echo "<TABLE>";
  9. for($x=1;$x<=$zgl_ile;$x++){
  10. echo "<TR>";
  11. for($kol=0; $kol<=$ile_kol;$kol++){
  12. echo "<TD>$wynik[$kol]</TD>";
  13. }
  14. echo "</TR>";
  15. }
  16. echo "</TABLE>";
  17. }
  18.  
  19. ?>


... a to plik docelowy gdzie będzie używana funkcja tabelki i gdzie wyciągam rekordy:
  1. <?
  2. include "inc/funkcje.php";
  3.  
  4. $ile_kol = 4;
  5. $zgl_sql = pg_query("SELECT * FROM zgl_aktywne");
  6. $wynik = pg_fetch_array($zgl_sql);
  7. $zgl_ile = pg_num_rows($zgl_sql);
  8.  
  9. tabela()
  10. ?>


Najbardziej chciałbym zmodyfikować utworzony przeze mnie kod, który prawie działa. Chętnie też przeczytam inne ciekawe rozwiązania. Dziękuję z góry za pomoc.

Ponieważ nie ma chętnych do odpowiedzi a ja sobie poradziłem z tematem, można zamknąć wątek.
Kużdo
Tak chyba lepiej.

index.php:
  1. <?
  2. include "inc/funkcje.php";
  3.  
  4. $query = pg_query("SELECT * FROM zgl_aktywne");
  5.  
  6. tabela($query);
  7.  
  8. ?>


funkcje.php:
  1. <?
  2. function tabela($zapytanie) {
  3. $ile_kol = pg_num_fields($zapytanie);
  4.  
  5. echo "<table>\n";
  6. while($row = pg_fetch_row($zapytanie)){
  7. echo "<tr>";
  8. for($nr_kol = 0; $nr_kol < $ile_kol; $nr_kol++){
  9. echo "<td>$row[$nr_kol]</td>"; }
  10. echo "</tr>\n"; }
  11. echo "</table>";
  12. }
  13.  
  14. ?>
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.