Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Skąd pobierać titile, keywordsy itp .. ;)
Damiankossek
post 20.12.2010, 12:53:14
Post #1





Grupa: Zarejestrowani
Postów: 118
Pomógł: 8
Dołączył: 10.12.2009

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


No więc witam,

Zapewne gdzieś tam w moich poprzednich pytaniach wspominałem że piszę CMSa opartego na Kohanie smile.gif ...
No i teraz mam mały problem ponieważ np. chciałbym aby użytkownik mógł zmieniać zawartość <title>, <meta> itp.
To już nie jest taki problem jak zrobić taki formularz i jak przekazać to do widoku smile.gif

Ale mam następujący problem jak i gdzie to zamieścić żeby można to póżniej prosto edytować ?

Wg. mnie najfajniej aby wszystko było zawarte w tablicy np.

  1. Plik pagesettings.php
  2.  
  3. return array('title' => 'Strona firmy X', 'keywords' => 'budownictwo, sciany');
  4.  


No i pobrać i wyświetlić te dane to nie problem, ale w razie edycji tych danych poprzez formularz, jak to zapisać z powrotem do tej tablicy?
Bo pierwsza koncepcja jaka przychodzi mi do głowy to pobrać zawartość tego pliku a póżniej np. poprzez str_replace podmieniać zawartość pliku, ale wydaje mi się to problematyczną i niepraktyczną metodą.

Myślałem jeszcze nad plikami w stylu: title.txt , keywords.txt itp. ale czy to jest dobre rozwiązanie ? W zasadzie proste do zrobienia i po moich przemyśleniach jedyna sensowna metoda, ale być może można to lepiej zrobić ?

Ten post edytował Damiankossek 20.12.2010, 14:44:04
Go to the top of the page
+Quote Post
amii
post 20.12.2010, 13:02:06
Post #2





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


A dlaczego nie w bazie danych? Takie operacje zwykle wykonuje się na bazie.


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post
lukaskolista
post 20.12.2010, 13:02:18
Post #3





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

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


COnfig w Kohana jest raczej do ustawiania na sztywno w plikach, nie do edycji przez uzytkownikow strony. Moze po prostu zrob tablice z konfiguracja, zserializuj ja i zapisz do pliku. Mozesz tez uzyc XML lub bazy danych
Go to the top of the page
+Quote Post
batman
post 20.12.2010, 13:07:32
Post #4





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




~Damiankossek
Proszę poprawić tytuł. W przeciwnym razie temat zostanie zamknięty.


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
Go to the top of the page
+Quote Post
thek
post 20.12.2010, 14:29:45
Post #5





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Ech... Popraw ten tytuł to raz, a dwa, że najwygodniej jest sobie utworzyć Kontroler dziedziczący po Template (nazwijmy go Mainsite), z pewnym widokiem bazowym (nazwijmy go Base). W konstruktorze Mainsite ustawiasz sobie zmienną $this->template->title na jakąś wartość domyślną i wyświetlasz w Base.
  1. class Mainsite_Controller extends Template_Controller {
  2. public $template = 'base'; //podstawowy widok/szablon (views/base.php)
  3. public function __construct() {
  4. $this->template = 'base';//lub inny wedle uznania, ja mam tu IF, który wybiera spośród dwóch, ale base jest domyślny i oba zawierają szkielet całej strony, jej layout
  5. parent::__construct();
  6. $this->template->title = 'Jakiś domyślny tytuł';
  7. };
  8. };

Inne kontrolery w razie potrzeby dziedziczą po Mainsite, dzięki czemu masz dostęp do owej zmiennej template->title i śmiało w swoich konstruktorach mogą ją nadpisywać winksmiley.jpg
  1. class Main_Controller extends Mainsite_Controller {
  2. public function __construct() {
  3. parent::__construct();
  4. $this->template->title = 'Sami sobie ustawiamy';
  5. }
  6. }


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
Damiankossek
post 20.12.2010, 14:49:40
Post #6





Grupa: Zarejestrowani
Postów: 118
Pomógł: 8
Dołączył: 10.12.2009

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


Thek, podałeś fajną metode lecz ja chcę mieć możliwość edycji tych danych z poziomu strony, lecz i tak wykorzystam Twoją metode bo jest wygodna. A co do pobierania danych, to pobiorę je z bazy smile.gif Myślałem jednak że takie dane trzyma się na plikach.

Pozdrawiam i dziękuje

P.S Sorry za nazwe tematu tongue.gif

Ten post edytował Damiankossek 20.12.2010, 14:51:12
Go to the top of the page
+Quote Post
thek
post 20.12.2010, 15:03:55
Post #7





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Jeśli chcesz edytować z poziomu strony to też żaden problem. Ja mam plik konfiguracyjny i przy wywoływaniu odpowiedniej wyciągam te dane z niego smile.gif Równie dobrze mogę użyć do tego celu bazy, co jest myślę wygodniejsze w przypadku dynamicznego tworzenia tytułu, gdzie tytuł ów jest naprawdę częsty w zmianach.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
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: 12.06.2025 - 20:08