• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

W jaki sposób najlepiej pobrać itemy z bazy na stronę?

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
183 wizyt
pytanie zadane 6 kwietnia 2021 w JavaScript przez Mitop Użytkownik (700 p.)
Witam, mam w bazie tabelę "turnieje" - zdjęcie, nazwa, data, ilość osób, cena, nagroda.

Mam też na stronie podstronę turnieje, gdzie chcę, żeby pobierały się wszystkie turnieje i były wyświetlone.

I teraz kilka pytań.

1. Skoro są zdjęcia to chyba najlepiej byłoby to zrobić asynchronicznie, a może poprostu mogę umieścić ten kod gdzieś na końcu, dzięki czemu załadowanie tych itemów zacznie sie robić dopiero jak wczyta się strona?

2. Min-height panelu do wyświetlania jest 200px. Czy jeśli zaczną się one wczytywać w to miejsce i zaczną przekraczać 200px to height zacznie się zwiększać, czy ze względu na to, że byłoby to asynchronicznie, height się nie zwiększy, bo już za późno.

3. W jaki sposób najlepiej to zrobić, nakierowanie jak to mniej więcej powinno wszystko wyglądać.

Używam, html,css,js i w backendzie nodejs
komentarz 6 kwietnia 2021 przez rafal.budzis Szeryf (85,380 p.)
Jak zapisujesz zdjęcia? W bazie danych? Czy może w bazie danych masz tylko url do zdjęcia ? :)

1 odpowiedź

0 głosów
odpowiedź 7 kwietnia 2021 przez D0nt_writ3_t0_m3 Początkujący (340 p.)

Osobiście proponuję jeżeli są one zapisane w postaci URL, po prostu wypisać je w znacznikach <img/> i w src umieścić ich źródło (no chyba że inaczej zapisujesz zdjęcia). Ja użyłbym do tego połączenia PHP -> DBMS ale nie wiem czy znasz PHP.

<?php
// podłączenie bazy danych przez PDO lub MySQLi, ja użyję MySQLi

$polaczenie = new mysqli($host, $user, $pass, $dbname);

$rezultat = $polaczenie->query("SELECT [...] FROM [...] WHERE [...]");

$ile = $rezultat->num_rows;

//wypisanie danych

for($i = 0; $i<$ile; $i++)
{
$row = $rezultat->fetch_assoc();
$source = $row['...'];

echo "<img src=\"".$source."\" />";
}
$rezultat->free_result();
$polaczenie->close();

Kod powyżej powinien (jeżeli nie popełniłem żadnego błędu) wypisać wszystkie zdjęcia i zamieścić je na stronie. Nie sprawdzałem sprawności ale pewnie miałeś styczność z PHP więc jak coś to sam poprawisz. W miejscach trzech kropek bądź [...] musisz wstawić swoje dane dot. bazy itd.

Jeżeli chodzi o asynchroniczność to wystarczy że np. na początku kodu wpiszesz żeby wstrzymał się na chwilę (sleep(int seconds)). Ewentualnie mógłbyś się pokusić o zamieszczenie kodu w osobnym pojemniku i tam sprawić by JS poczekał na załadowanie dokumentu, chociaż uważam że to już udziwnianie kodu. 

Jeżeli chodzi o wysokość panelu to nie powinno być problemu, bo pamiętajmy że interpreter czyta stronę linijka po linijce więc kod CSS będzie przeczytany pierwszy (jeżeli leży na górze strony).

Mam nadzieję że pomogłem. W razie pytań - pytaj!

 

Podobne pytania

0 głosów
1 odpowiedź 194 wizyt
pytanie zadane 18 listopada 2019 w JavaScript przez Krzysztofson Użytkownik (620 p.)
0 głosów
0 odpowiedzi 156 wizyt
0 głosów
1 odpowiedź 421 wizyt
pytanie zadane 1 lutego 2021 w JavaScript przez Author[] Gaduła (3,130 p.)

93,188 zapytań

142,204 odpowiedzi

322,027 komentarzy

62,515 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2581p. - dia-Chann
  2. 2537p. - Łukasz Piwowar
  3. 2528p. - Łukasz Eckert
  4. 2514p. - CC PL
  5. 2476p. - Tomasz Bielak
  6. 2445p. - Łukasz Siedlecki
  7. 2443p. - rucin93
  8. 2373p. - Marcin Putra
  9. 2310p. - Michal Drewniak
  10. 2258p. - Adrian Wieprzkowicz
  11. 2210p. - Mikbac
  12. 2156p. - Anonim 3619784
  13. 1733p. - rafalszastok
  14. 1701p. - Michał Telesz
  15. 1580p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...