[HTML][PHP]Wczytanie danych z bazy do tabeli |
[HTML][PHP]Wczytanie danych z bazy do tabeli |
26.02.2018, 11:29:02
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 26.02.2018 Ostrzeżenie: (0%) |
Dzień dobry wszystkim, potrzebuje wczytać dane z bazy danych do tabeli stworzonej w HTML. Chodzi mi o 5 ostatnich wpisów jego zadań czyli ze zmienne sesji musi zgadzać się z wpisem z bazy. Póki co wczytuje mi ostatni wpisany rekord, x5. Tak to wygląda na dzień dzisiejszy:
A to moja funkcja:
Chcę wyświetlić 5 wierszy, ale bez powtarzania. Próbowałem używać mysqli_num_rows ale wyświetlało mi błędy i nie mógł zwrócić wyniku... Jak poprawnie skorzystać z mysqli_fetch_assoc, z tego co mi wiadomo zwraca tabelę asocjacyjną czyli zamiast numerków przydziela takie same skojarzenia jak w bazie, no ale teraz pojawia się pytanie jak wyświetlić kolejny wynik z bazy a nie tylko ostatni wpisany? |
|
|
26.02.2018, 11:34:51
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
SELECT... LIMIT 5.
Potem dowolną pętlą zwyczajnie wyświetlasz. Masz przykłady w komentarzach http://php.net/manual/pl/mysqli-result.fetch-array.php -------------------- |
|
|
26.02.2018, 22:41:04
Post
#3
|
|
Grupa: Zarejestrowani Postów: 129 Pomógł: 13 Dołączył: 29.03.2012 Ostrzeżenie: (0%) |
Teodor0 powtarza Tobie 5 razy bo w Twoim przypadku zostaje zwielokrotniona ostatnia wartość rekordu, gdyż PHP nie wiedząc do jakiego indeksu tablicy się odwołujesz, wybiera ostatnią pozycję z kluczami: user, dodano itd. Przypisując do zmiennej $row funkcję mysqli_fetch_assoc($result) utworzyłeś tablicę z zawartością wybranych przez Ciebie rekordów. Do iterowania po takiej tablicy używa się innej pętli. Ta, której użyłeś też się nadaje z tym, że jest bardziej rozbudowana i trzeba ustalać maksymalną liczbę iteracji co jest nie praktyczne dla pobierania danych z bazy. Aby twój sposób zadziałał musisz wyciągnąć ze zmiennej $row najpierw numer indeksu czyli 0,1,2,3.. a później klucz. Zainteresuj się pętlą while i funkcją print_r(), która może wypisać całą strukturę utworzonej tablicy. Odnośnie pobierania ostatnich 5 rekordów możesz zastosować Order by Id_Rekordu Limit 5.
|
|
|
28.02.2018, 08:24:16
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 26.02.2018 Ostrzeżenie: (0%) |
Zastosowałem całkiem inną metodę a mianowicie:
I wszystko działa jak należy Ten post edytował Teodor0 28.02.2018, 08:24:59 |
|
|
28.02.2018, 08:29:21
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Nie potrzebujesz tej drugiej pętli. Wszystko jest w pierwszej i $row.
-------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 19.04.2024 - 12:26 |