Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Object-oriented programming _ [MVC]Ponowne skrzystanie z tej samej tablicy $data przy drugim requeście

Napisany przez: trzczy 29.10.2017, 15:31:29

Jedna strona wykonuje 2 requesty do serwera, wymagające dostępu do bazy danych. Pierwszy to do index, a drugi do css.php. Czyli do pliku stylów generowanego dynamicznie.

Na serwerze jest typowa implementacja MVC i kontroler generuje tabelę danych, najczęściej nazywaną $data i ją injectuje do obiektu view. Chodzi o to, aby ten drugi request korzystał z tej samej tablicy $data, a nie generowanej ponownie. Czy wystarczy uruchomić sesję i wtedy tablica $controller->data będzie dostępna dla nowego requestu? Czy trzeba tę tablicę zadeklarować w tablicy $_SESSION w ten sposób?

  1. http://www.php.net/session_start();
  2. $_SESSION['data']=$controller->data;


Czy w ogóle inaczej jeszcze?
Z góry dziękuję

Napisany przez: markuz 29.10.2017, 15:37:07

Co takiego robi css.php że generuje style na podstawie bazy danych? Coś takiego nie powinno mieć miejsca w 99.9% przypadkach.

Napisany przez: trzczy 29.10.2017, 15:46:44

Na stronie "index" są generowane w php unikalne atrybuty html id. Np

  1. <div id = "commnet7"></div>

Do tych id trzeba przypisać style. Chodzi o ukrywanie/pokazywanie fragmentów strony przez kliknięcie. Strona działa bez javascript.

Można je wygenerować w pliku index.php w tagach <style>, ale ja chcę odrębny plik stylów.

Napisany przez: markuz 29.10.2017, 15:51:14

Dlaczego używasz ID zamiast np. class="comment"? Pokaż kod wynikowy (css i html).

Napisany przez: trzczy 29.10.2017, 15:58:15

Ja się nie pytam o tematykę css, tylko o MVC ;-)

Co do css, to chodzi o zastosowanie http://jsfiddle.net/khnNe/869/

Jak się to stosuje wiele razy na 1 stronie, to trzeba się zatroszczyć o unikalne id.

Napisany przez: markuz 29.10.2017, 16:02:34

To da się zrobić używając samych styli, bez ID - wtedy nie musisz generować plików css - nie musisz też korzystać 2x z tych samych wyników.

Napisany przez: trueblue 29.10.2017, 16:07:33

http://jsfiddle.net/khnNe/871/
id generuj unikalne tylko dla for i id.
Całość można uprościć usuwając jeden span i label.

//Poprawione jsfiddle

Napisany przez: trzczy 29.10.2017, 23:44:06

Sporo nat tym siedziałem i obawiam się, że się jednak nie da. Ok zadam temat nw dziale css. Ale póki co pytanie o MVC
edit: @trueblue ok

Obu panom dziękuję. Markuz miał nosa, a trueblue zakończył problem. Ciekawe, czy to konkretne pytanie o MVC jeszcze kiedyś wyda mi się zasadne ;-)
Pozdrawiam

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)