Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zasada uruchamiania modulow w CMSach
elmozaur
post 21.07.2008, 19:37:41
Post #1





Grupa: Zarejestrowani
Postów: 518
Pomógł: 18
Dołączył: 21.07.2008

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


Witajcie.
W ramach poznawania PHP zabralem sie za pisanie prostego CMSa.
Mam juz baze MySQL, pliki konfiguracyjne, moduly ktore inkluduje sie do obslugi odpowiednich podstron (kontakt.php, mapa.php, tresc.php).

I teraz prosze o wsparcie teoretyczne gdyz zatrzymalem sie na nastepujacej kwesti:
Jak mozna zrobic obsluge tych modulow?
Przyklad:
Mam adres http://www.mojastrona.pl/index.php?strona=...kat=2&sek=4
Tu sprawa jest prosta gdyz w pliku index.php moge zrobic instrukcje warunkowa, ktora w zaleznosci od wartosci zmiennej strona pobranej GETem inkluduje odpowiedni modul (w tym przypadku plik tresc.php).

Problem mam jednak z czyms takim http://www.mojastrona.pl/index.php?strona=...kat=2&sek=4
W tym przykladzie zakladam ze plik index.php jest juz na serwerze i nie bede w nim grzebal. Plik z obsluga galerii (np galeria.php)
wrzucam np do katalogu moduly. Jak teraz moge (nie ruszajac index.php) dodac obsluge tego dodatkowego pliku.

Jak to sie robi w innych CMSach jak joomla, php-nuke itp
Wiem ze jest tam mozliwosc instalowania dodatkowych modulow (plikow php)

za wszelkie info dziekuje i pozdrawiam
Grzesiek
Go to the top of the page
+Quote Post
Piotrwusek
post 21.07.2008, 19:48:44
Post #2





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


dokładnie

tresc odnosi sie np do

moduly/tresc/index.php

a galeria np

moduly/galeria/index.php


  1. <?php
  2. include("moduly/".$_GET['strona']."/index.php");
  3. ?>
Go to the top of the page
+Quote Post
elmozaur
post 21.07.2008, 21:06:26
Post #3





Grupa: Zarejestrowani
Postów: 518
Pomógł: 18
Dołączył: 21.07.2008

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


dziekuje.
O takie rozwiazanie mi chodzilo.
Go to the top of the page
+Quote Post
l0ud
post 21.07.2008, 21:09:08
Post #4





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


A ja sobie w stronę wpiszę ../ i zawalę cały serwer. Proponuję utworzyć dodatkowy plik / tabelę w bazie danych z modułami - struktura może być prosta - nazwa wywołania i nazwa pliku smile.gif


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
wrzasq
post 21.07.2008, 21:13:45
Post #5





Grupa: Zarejestrowani
Postów: 206
Pomógł: 18
Dołączył: 6.03.2006
Skąd: Szczecin

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


@elmozaur: ale nie zapomnij o zabezpieczeniach, kod Piotrwusek'a to tylko ogolny mechanizm, pamietaj o uzyciu na przyklad if( file_exists(...) ), czy basename(). poza tym polecam uzywac inna nazwe pliku (na przyklad main.php) a index.php zostawiac na zabezpieczenie przed przegladaniem katalogu (jesli ktos wejdzie do twojego katalogu, gdzie index.php jest czesciowym modulem, to skrypt zacznie pluc bledami).

-edit-

akurat pisalem posta, gdy l0ud sie wtracil tongue.gif.

Ten post edytował wrzasq 21.07.2008, 21:15:34


--------------------
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: 16.06.2025 - 23:34