Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Dwa layouty, Najlepszy sposób?
-Wieviór-
post 1.10.2006, 06:18:46
Post #1





Goście







Zwracam się do użytkowników, którzy mają coś takiego u siebie na stronie lub kiedyś coś takiego robili. Chciałbym dać moim użytkownikom możliwość wyboru layoutu. Jaki jest najlepszy sposób na to? Mój pomysł:

- każdy user jest zalogowany, w tabeli users jest pole "layout", gdy jest 0 wybieramy domyślny layout, gdy 1 wybieramy ten drugi. Tyle tylko, że tutaj trzeba przed pokazaniem całej strony połączyć się do bazy, a jeśli user nie jest zalogowany?

- Zapisujemy wybrany layout w sesji z długim lifetimem, logowanie to już co innego.

Teraz sprawa nieco inna. Jak to rozwiązać od strony kodu? Czy lepiej robić przy każdym pliku:

  1. <?
  2. if ($layout == 0) { echo 'layout pierwszy'; }
  3. if ($layout == 1) { echo 'layout drugi'; }
  4. ?>


Czy może zrobić dwa katalogi:
  • Layout1
  • Layout2

A może jeszcze jakoś inaczej. Pomysły ludzi w tej kwesti doświadczonych bardzo mile widziane. cool.gif
Go to the top of the page
+Quote Post
gszesiek
post 1.10.2006, 07:38:55
Post #2





Grupa: Zarejestrowani
Postów: 152
Pomógł: 1
Dołączył: 17.09.2006

Ostrzeżenie: (0%)
-----


to jak nie jest zalogowany to niech domyślnie będzie do czegoś przywiązany i daj mu możliwość zmiany, a zmiany zapisz w cookie


--------------------
Go to the top of the page
+Quote Post
wipo
post 1.10.2006, 07:39:57
Post #3





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

Ostrzeżenie: (0%)
-----


Większość systemów opartych o szablony stosuje katalogi.

Jeżeli chodzi o stosowanie dużej ilości if to proponuje zastosować switch case lub przynajmniej else


--------------------
Go to the top of the page
+Quote Post
dr_bonzo
post 1.10.2006, 08:15:03
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Zrob to tak zeby wybor szablonu nastepowalo przez podmienienie TYLKO jednej zmiennej, czyli np. rozwiazanie z katalogami bedzie dobre:
pobierasz szablony z katalogu "szablony/$szablon/...." i juz.

Cytat
Czy lepiej robić przy każdym pliku:
Stanowczo nie! Aco jak dodasz trzeci layout? Bedziesz musial wyedytowac wszystkie pliki z poprzednich layoutow, a metoda z katalogami dodasz tylko nowy katalog i nazwe tego katalogu do zbioru dostepnych skorek/templatow.

A jak nie jest zalogowany to niech sie zaloguje smile.gif Bedzie mial bonusa.
Niezalogowaniu userzy tez maja sesje i mozesz tam zapisac jego ustawienia zamiast w ustawieniach usera.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
-Wieviór-
post 1.10.2006, 10:14:18
Post #5





Goście







Dzięki za rady. Doszedłem do wniosku, że zmienię nieco strukturę mojej strony i w katalogu "pliki" będą zachowane takie pliki z kodem wewnętrznym jakby.

Natomiast w głównym katalogu będą tylko pliki:
  • index.php
  • layout1.php
  • layout2.php
  • dzial1.php
  • dzial2.php

Plik index.php będzie includował layout1.php lub layout2.php zaraz na początku skryptu, gdy tylko ustali jaki wybrał użytkownik, jeśli user nie zalogowany to pokaże layout1.php, czyli jakby domyślny. Pliki dzial.php i dzial2.php będą includować pliki z katalogu. Bo w sumie zawartość będzie taka sama pod względem wyglądu, ew. style troszkę inne, ale to nie problem.

Jakieś uwagi? Dobrze wymyśliłem? smile.gif

Ten post edytował Wieviór 1.10.2006, 10:14:53
Go to the top of the page
+Quote Post
hwao
post 1.10.2006, 10:18:05
Post #6


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




Jeżeli jest to tylko zmiana w wyglądzie strony, tzn bez zmian tresci to polecam zrobic 2 arkusze stylów. Następnie zrobic w Js przelaczanie midzy nimi
Go to the top of the page
+Quote Post
-Wieviór-
post 1.10.2006, 10:22:47
Post #7





Goście







Cytat(hwao @ 1.10.2006, 11:18:05 ) *
Jeżeli jest to tylko zmiana w wyglądzie strony, tzn bez zmian tresci to polecam zrobic 2 arkusze stylów. Następnie zrobic w Js przelaczanie midzy nimi


Tzn. zmiana jest nieco głębsza niż np. podmienienie obrazka, bo układ jest zmieniony. Chodzi o to, że i w jednym i w drugim jest pole do treści działu, a ta już i tutaj i tutaj będzie taka sama, bo to w sumie tylko tekst i jakieś fotki w sumie.

EDIT:

Zobaczyłem u ciebie na blogu z tym przełączaniem. Fajnie to wygląda, ale to niestety nie dla mnie, bo za duże zmiany smile.gif


Ten post edytował Wieviór 1.10.2006, 10:35:26
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.06.2025 - 17:02