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

przerzucanie wiekszej ilości danych do innego pliku php

Object Storage Arubacloud
0 głosów
133 wizyt
pytanie zadane 1 kwietnia 2019 w PHP przez borygooo Początkujący (320 p.)
w lekcji o PHP p Zalenta po uzyskaniu tablicy asocjacyjnej wyciagamy w pliku "zaloguj.php" wszystkie potrzebne dane (imie, ilosc drewna itd) i wkladamy je do zmiennych sesyjnych. Następnie plik zaloguj  za pomocą komendy header przerzuca do pliku gra.php gdzie uzywa sie zmiennych wczesniej wyciagniętych. Jak rozumiem sa to dobre praktyki by nie wyświetlac danych w tym samym pliku tylko osobnym. Problem pojawia sie gdy danych jest duzo wiecej.
Ja mam sytuacje że w tablicy asocjacyjnej bede mial  12 wierszy. Dane uzyskuje używając while loop
while($row=$wynik->fetch_assoc())
Z tych danych bede tworzył w html'u <table>. Na razie ten table wyswietlam w pliku zaloguj.php. Jaki jest najlepszy spsosob na "transport" wiekszej ilości danych do drugiego pliku gdy tablica asocjhacyjna ma kilkanasice wierszy?  Mnie przyszło do głowy by iterowane wiersze wrzucic do listy ktora przypiszemy do zmiennej sesyjnej i taka listę bede potem znowu iterował na innym pliku by wyswietlic table. Czy jest jakis bardziej elegancki sposób? A może po prostu zostawić tak jaj jest - bez extra pliku ktory wyświetla dane zalogowanemu użytkownikowi

1 odpowiedź

0 głosów
odpowiedź 1 kwietnia 2019 przez Ehlert Ekspert (212,670 p.)
edycja 1 kwietnia 2019 przez Ehlert

wszystkie potrzebne dane (imie, ilosc drewna itd) i wkladamy je do zmiennych sesyjnych

Nie, obecnie są to bardzo złe praktyki.

  1. Twoja aplikacja na dobrą sprawę powinna mieć jeden, góra trzy pliki wejściowe. Zupełnie bez sensu jest tworzenie plików w stylu login.php, logout.php. Bardzo szybko tracisz kontrolę nad budową i strukturą aplikacji.
  2. Takich danych nie powinno się zapisywać w sesji! Przez to co logowanie oraz zmiany na różnych urządzeniach będziesz dostawać nieprawidłowe dane. Co żądanie powinieneś pytać bazę danych o dane. Chyba że bardzo rzadko się zmieniają to korzystasz z cache np redis.
  3. Oddzielaj logikę od widoku. W jednym pliku modyfikujesz i wyciągasz dane, w innym je wyświetlasz. 
1
komentarz 1 kwietnia 2019 przez Milesq Nałogowiec (32,020 p.)

Nie, obecnie są to bardzo złe praktyki.

? Przecież o tym piszesz w pkt 3...

komentarz 1 kwietnia 2019 przez Ehlert Ekspert (212,670 p.)

Myślałem o czym innym, co innego wkleiłem. Racja yes

komentarz 1 kwietnia 2019 przez borygooo Początkujący (320 p.)

@Ehlert,

Dzieki za odpowiedź. Troszkę się pogubiłem. Dla jasności: aplikacja służy sprawdzeniu przez mieszkanca jakie ma saldo. Jest logowanie i po zalogowaniu uzytwkonikowi wyswielta sie tabela gdzie pokazane są 12 miesiecy i dla kazdego miesiaca (jeden wiersz) należnośc, wpłata oraz saldo. Dane sa przeze mnie wrzucane co miesiąc do bazy danych. Nie rozumiem:
ad 1. co rozumiesz przez "3 pliki wejsciowe"?
ad2. jak moge dostawać nieprawidłowe dane przy prawidłowo skonstrułowanym pytaniu sql? Dane beda dokładane co miesiąc. Czy to rzadka zmiana?
ad3. Punkt 3 zaprzecza punktowi 1. Jesli oddzielam logike od widoku to pozyskane dane z iteracjji powinienem przerzucić to innego pliku ktory je wyświetli i stąd było moje pytanie jak je przerzucić gdy mamy kilkanaście wierszy z bazy danych. Jak wiec powinno być: wyświetlam w pliku gzie pozyskałem dane czy przerzucam je by wyświietlić w innym pliku. A jeśli tak to jak je przerzucić gdy mam kilkanasice wierszy pozyskanych z bazy?

komentarz 1 kwietnia 2019 przez Ehlert Ekspert (212,670 p.)

Punkt 3 wcale nie zaprzecza pierwszemu. smileyChodzi mi o to, że każdy request (zapoznaj się z pojęciem http request, response. W php nie otwieramy pliku login.php, tylko wysyłasz request), trafia do jednego pliku którym jest index.php. Bez względu czy chcesz akcję zaloguj, wyloguj, pokaż tabelkę, to wszystko trafia pod index.php. Przerabiając konwencję z kursu Zelenta na początku wyda Ci się to bez sensu, ale właśnie tak działają wszystkie sensowne aplikacje. Proponuję przeczytać dokładnie i ze zrozumieniem, krok po kroku ten artykuł. Nie koniecznie chcę Cię nakierowywać na Symfony, bo zaraz się ktoś na mnie rzuci, ale chcę Ci pokazać ideę.

https://symfony.com/doc/current/introduction/from_flat_php_to_symfony2.html

Tutaj trochę o http

https://symfony.com/doc/current/introduction/http_fundamentals.html

1
komentarz 1 kwietnia 2019 przez borygooo Początkujący (320 p.)
dziękuję za odpowiedź. Zapoznam si ę z przesłanyumi przez ciebie materiałami z nadzieja że rozjaśni mi sie w głowie

Pozdrawiam

Krzysiek

Podobne pytania

0 głosów
0 odpowiedzi 212 wizyt
pytanie zadane 30 października 2017 w PHP przez Undisputed Gaduła (3,040 p.)
0 głosów
1 odpowiedź 112 wizyt
pytanie zadane 11 października 2017 w PHP przez bennylol Nowicjusz (120 p.)
+1 głos
2 odpowiedzi 652 wizyt
pytanie zadane 26 kwietnia 2017 w PHP przez nielotweb Bywalec (2,240 p.)

92,551 zapytań

141,393 odpowiedzi

319,523 komentarzy

61,936 pasjonatów

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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...