Statystyka
Wizyt: 2 002 637
Wizyt dzisiaj: 389
Wizyt wczoraj: 756
Wizyt w m-cu: 4691
Osób on-line: 6
Prenumeratorzy: 226
Porady
[PHP/MySQL] Jak wyświetlić zawartość tabeli z bazy MySQL? Krzysztof Szypulski - Niedziela, 26 marca 2006 13:42:16 W poprzedniej poradzie dodaliśmy dane do przykładowej tabeli. Teraz wyświetlimy te dane na stronie. Sposób I - wynik zwrócony w postaci tablicy asocjacyjnej.
PRZYKŁAD
<?php /* połączenie z bazą sobie darujemy opisane jest ono w tej poradzie http://www.kess.com.pl/?sid=10&pid=32 */ /* zapytanie do konkretnej tabeli */ $wynik = mysql_query ( "SELECT * FROM test" ) or die( 'Błąd zapytania' ); /* wyświetlamy wyniki, sprawdzamy, czy zapytanie zwróciło wartość większą od 0 */ if( mysql_num_rows ( $wynik ) > 0 ) { /* jeżeli wynik jest pozytywny, to wyświetlamy dane */ echo "<table cellpadding=\"2\" border=1>" ; while( $r = mysql_fetch_assoc ( $wynik )) { echo "<tr>" ; echo "<td>" . $r [ 'imie' ]. "</td>" ; echo "<td>" . $r [ 'email' ]. "</td>" ; echo "<td> <a href=\"index.php?a=del&id={$r['id']}\">DEL</a> <a href=\"index.php?a=edit&id={$r['id']}\">EDIT</a> </td>" ; echo "</tr>" ; } echo "</table>" ; } ?>
Sposób II - wynik zwrócony jako obiekt.
PRZYKŁAD
<?php /* połączenie z bazą sobie darujemy opisane jest ono w tej poradzie http://www.kess.com.pl/?sid=10&pid=32 */ /* zapytanie do konkretnej tabeli */ $wynik = mysql_query ( "SELECT * FROM test" ) or die( 'Błąd zapytania' ); /* wyświetlamy wyniki, sprawdzamy, czy zapytanie zwróciło wartość większą od 0 */ if( mysql_num_rows ( $wynik ) > 0 ) { /* jeżeli wynik jest pozytywny, to wyświetlamy dane */ echo "<table cellpadding=\"2\" border=1>" ; while( $r = mysql_fetch_object ( $wynik )) { echo "<tr>" ; echo "<td>" . $r -> imie . "</td>" ; echo "<td>" . $r -> email . "</td>" ; echo "<td> <a href=\"index.php?a=del&id={$r->id}\">DEL</a> <a href=\"index.php?a=edit&id={$r->id}\">EDIT</a> </td>" ; echo "</tr>" ; } echo "</table>" ; } ?>
Sposób III - wynik zapisany do tablicy asocjacyjnej, numerycznej lub w obu.
PRZYKŁAD
<?php /* połączenie z bazą sobie darujemy opisane jest ono w tej poradzie http://www.kess.com.pl/?sid=10&pid=32 */ /* zapytanie do konkretnej tabeli */ $wynik = mysql_query ( "SELECT * FROM test" ) or die( 'Błąd zapytania' ); /* wyświetlamy wyniki, sprawdzamy, czy zapytanie zwróciło wartość większą od 0 */ if( mysql_num_rows ( $wynik ) > 0 ) { /* jeżeli wynik jest pozytywny, to wyświetlamy dane */ echo "<table cellpadding=\"2\" border=1>" ; while( $r = mysql_fetch_array ( $wynik )) { echo "<tr>" ; echo "<td>" . $r [ 1 ]. "</td>" ; echo "<td>" . $r [ 2 ]. "</td>" ; echo "<td> <a href=\"index.php?a=del&id={$r[0]}\">DEL</a> <a href=\"index.php?a=edit&id={$r[0]}\">EDIT</a> </td>" ; echo "</tr>" ; } echo "</table>" ; } ?>
Warto zajrzeć:http://www.kess.com.pl/?sid=10&pid=32 http://www.kess.com.pl/?sid=10&pid=42
Komentarze
RaRu
(83.26.3.xxx) Niedziela, 26 marca 2006 22:38:58
Super porada, jasno i na temat. Mam pytanie pt: który ze sposobów jest najlepszy (najszybszy, najbardziej optymalny...) -> lub w jakich sytuacjach polecasz wykorzystanie każdego ze sposobów.
Od administratora:
Polecam lekturę: http://pl.php.net/manual/pl/function.mysql-fetch-assoc.php http://pl.php.net/manual/pl/function.mysql-fetch-array.php http://pl.php.net/manual/pl/function.mysql-fetch-object.php
bw
(83.26.15.xxx) Poniedziałek, 27 marca 2006 17:43:09
fajny artykuł
PrYmUS
(87.207.129.xxx) Środa, 19 kwietnia 2006 13:39:15
piekna sprawa tego szukałem :) good tylko nie wymagajcie opła prosze :) bo takich jasno opisanych ston jest mało a reszta chce zarabiać opisując open source :) pozdro
Maciek
(83.27.82.xxx) Czwartek, 27 kwietnia 2006 15:40:13
jakie zadanie ma:
<a href="index.php?a=del&id={$r['id']}">DEL</a>
Od administratora:
W następnej poradzie będzie jak usunąć rekord z bazy to się przyda ;-)
Malker
(81.210.24.xxx) Czwartek, 25 maja 2006 15:18:50
Maciek
jakie zadanie ma:
<a href="index.php?a=del&id={$r['id']}">DEL</a>
Odpowiedz:
zeby usunac uzytkownika albo EDIT zeby edytowac xD
A tak to spoko artykuł xD
Michal
(217.75.51.xxx) Środa, 02 sierpnia 2006 23:47:18
Skrypt sie przydal, dzieki wielkie. Ale jak zrobic zeby na jednej stronie pokazalo np. 10 rekordow, a po kliknieciu w link nastepne 10? Najlepiej zeby byly alfabetycznie albo wedlug id. Dzieki za pomoc
Seymour
(83.18.235.xxx) Środa, 18 października 2006 23:35:38
Wszystko jest ok jeśli oczywiście chce się wczytac cała tabele.
Ja mam jednak takie pytanie do admina:
chodzi mi o fragment:
echo "<td>".$r['file_name']."</td>";
echo "<td>".$r['file_dls']."</td>";
jest on odpowiedzialny za odczytywanie danych w kolumnach.
Ja jednak chciałbym odczytac dane tylko z pojedynczej komórki np
file_name' - nazwe pliku
'file_dls - ilosc pobran
Jak powinien wyglądac zmodyfikowany kod?
Od administratora:
Zapytanie musi wtedy zawierać odpowiedni warunek "where" np.$wynik = mysql_query ( "SELECT * FROM test HHERE id='$id'" ) or die( 'Błąd zapytania' );
Mariusz
(83.17.241.xxx) Piątek, 07 września 2007 13:26:38
Witam!
Chciałbym wiedzieć jak wyświetlić dodatkowy wiersz z opisami do kolumn, oczywiście ponad danymi.
Pozdrawiam
Od administratora:
Przed pętla while daj taki wiersz.
Ze względu na brak czasu na moderowanie komentarzy, zawieszam możliowść ich dodawania. Masz pytanie, wykorzystaj formularz "Zadaj pytanie".
Publikowane komentarze są prywatnymi opiniami użytkowników serwisu. Serwis nie ponosi odpowiedzialności za treść opinii.
Zadaj pytanie
Nie znalazłeś(aś) odpowiedzi na nurtujące Cię pytanie? Zapytaj mnie, może będę umiał Ci pomóc.