Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> Wlasne przyjazne url
marcio
post
Post #1





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Witam jestem w trakcie konczenia mojego silnika dla cms'a jednak chcialbym w nim zastosowac wlasny system przyjaznych url'i, i chcialem zapytac czy ktos z was zna jakies dobre art na czym polega pisanie takiego czegos bez ingerencji w server apache i reguly mod_rewrite wiem ze mozna cos takiego zrobic bo czytalem kiedys o tym ale nie wiem zabardzo od czego zaczac tongue.gif


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Pierwszy wynik w googlach...
http://wortal.php.pl/wortal/artykuly/pomys.../przyjazne_urle


--------------------
Go to the top of the page
+Quote Post
marcio
post
Post #3





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


No ok ok szukac na google to i ja potrafie chodzi mi jak wy byscie to zrobili albo moze ktos z was juz cos takiego robil i moze sie podzielic nie mowie kodem ale pomyslem jak to zrobil i czy dziala to tak jak mod_rewrite.

Ok niby dziala np tak generuje sobie linki i zawartosc(pseudo kod):
  1. <?php
  2. //Inicjalizacja:
  3.  
  4. $arrParams = array();
  5. $strDefaultPath = $_SERVER['SCRIPT_NAME'];
  6. $_SERVER['PATH_INFO'] = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : $strDefaultPath;
  7. $arrParams = explode('/', substr( $_SERVER['PATH_INFO'], 1));
  8.  
  9. //Funkcja do robienia linkow:
  10.  
  11. function MakeUrl($site = '/index.php', $params = array('')) {
  12.  
  13. $params = implode('/', $params);
  14. return $site.'/'.$params;
  15.  
  16. }
  17.  
  18. //Przykladowe zapytanie dal tematow z danej kategorii:
  19. $query7 = ('select * from tematy where kategoria="'.mysql_real_escape_string($arrParams[0]).'" and cid = '.(int)$arrParams[1].' order by tid desc limit '.$strona*$liczba.','.$liczba.'');
  20.  
  21. //Zwracanie URL:
  22. echo('<a href="'.MakeUrl('/posts.php', array($dane['kategoria'], $dane['cid'], $dane['tid'], $dane['autor'], $dane['tytul'])).'">'.stripslashes($dane['tytul']).'</a>');
  23. ?>


I url sa takie:
http://strona.pl/easy.php/Webhacking/8 -> Link do kategorii forum gdzie wyswietlane sa tematy danej kategrii
I potem linki generowane poprzez kod zaraprezentowany wyzej:
http://strona.pl/posts.php/Webhacking/8/51/uw_test/Tytul

Czy takie cos dobrze wyglada i jest to w pelni funkcjonalne??

I jeszcze jedno nie bardzo rozumiem jak dokladnie mam usunac te rozszerzenie plikow tzn rozumiem to tylko jest jeden problem przewaznie strony gdzie sa NiceUrl pracuja zawsze pod kontrola jednego pliku(gdzie sie include caly silnik etc...) np index.php wiec regula dla niego w .htaccess wyglada:
Cytat
<Files index>
ForceType application/x-httpd-php
</Files>

A ja np mam kilka plikow np:
admin.php
index.php
register.php
Etc.....

Wiec jak miala by wygladac regula da wszystkich plikow *.php np z katalogu cms/??



questionmark.gif

Ten post edytował marcio 27.02.2009, 00:27:22


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
sagittariuspl
post
Post #4





Grupa: Zarejestrowani
Postów: 374
Pomógł: 3
Dołączył: 30.12.2006
Skąd: co skąd?

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


Cytat(marcio @ 27.02.2009, 00:27:45 ) *
A ja np mam kilka plikow np:
admin.php
index.php
register.php
Etc.....

Wiec jak miala by wygladac regula da wszystkich plikow *.php np z katalogu cms/??
questionmark.gif
wyciagasz $_SERVER[REQUEST_URI] i dostajesz np. "/register";
potem tylko include(substr($_SERVER[REQUEST_URI], 1).".php")

chyba o ot Ci chodzilo


--------------------
Tylko sprawdzone typy bukmacherskie na BetGen.pl
Potrzebujesz konta bankowego? Nie? Każdy potrzebuje. Porównaj konta i wybierz najlepsze dla siebie
Zostań milionerem zaczynając od zbierania truskawek. Każdy może być bogaty - to nie mit.
Go to the top of the page
+Quote Post
marcio
post
Post #5





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Nie nie chodzi mi o includowanie stron tongue.gif chodzi mi o odwolywanie sie do nich nie podajac rozszerzenia.

Wczesniej podalem ze linki tak wygladaja:
Cytat

A chcialbym zeby do plikow easy/posts.php i innych mozna bylo sie odwolywac bez .php czyli linki mialyby tak wygladac:
Cytat

Tak jak jest w tym arcie: http://wortal.php.pl/wortal/artykuly/pomys.../przyjazne_urle


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
bim2
post
Post #6





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


http://forum.php.pl/index.php?s=&showt...st&p=558110

smile.gif


--------------------
Go to the top of the page
+Quote Post
marcio
post
Post #7





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Hmm nie bardzo rozumiem nie chce bawic sie w rzadne skomplikowane router'y ani kontrlolery chcialem zastosowac metode przedstawiona w arcie tylko ze dla wiekszej ilosci plikow.

P.S bim2 moze rozwiniesz twoja odpowiedz tongue.gif^^?


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
bim2
post
Post #8





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


Jesli nei chcesz korzystać z FW, to ok. Ale tą klasę którą załączyłem razem z htaccess możesz użyć.


--------------------
Go to the top of the page
+Quote Post
marcio
post
Post #9





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


No tak ale z tego co ja widze to masz wlasnie mod_rewrite a ja chce bez niego tongue.gif wiem nie znam sie na tym ale chce bez mod_rewrite, glownie o to chodzi ze nie wiem jak zmienic ta regule:
Cytat
<Files index>
ForceType application/x-httpd-php
</Files>

Tak zeby wszystkie pliki nie tylko INDEX byly zawsze typy *.php bez podawania rozszerzenia w URL

To jak ma ktos pomysla^^questionmark.gif


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
megawebmaster
post
Post #10





Grupa: Zarejestrowani
Postów: 143
Pomógł: 17
Dołączył: 8.11.2008
Skąd: Libiąż

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


Z tego co wiem to nie da się zrobić w ten sposób, w który Ty chcesz. Zawsze musisz podać plik, który serwer ma wczytać inaczej nici z wszystkiego. A jak nie podasz '.php' to serwer pomyśli, że chodzi o podkatalogi i tam będzie szukał indeksu.
Go to the top of the page
+Quote Post
marcio
post
Post #11





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Aha no ale z tych artow wynika ze tak mozna.

No ok mowi sie trudno bedzie z .php tongue.gif


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
bim2
post
Post #12





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


dało się jakoś ale musisz wskazac który plik ma być jako php rozpoznawany.

wtedy adres był mysite.com/index?sdadas=asdasd


--------------------
Go to the top of the page
+Quote Post
marcio
post
Post #13





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Nom to tez wiem do tego jest regula:
Cytat
<Files nazwa_pliku>
ForceType application/x-httpd-php
</Files>

ALe po pierwsze to dziala tylko dla jednego pliku i jest to troche nieporeczne musialbym kombinowac z modyfikacja i dopisywaniem noweej reguly do pliku htaccess za kazdym tworzeniem nowej podstrony tongue.gif

W sumie nawet nie wiem czy htaccess na szu.pl dziala bo jak daje regule na jeden plik to i tak nie dziala tongue.gif


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
megawebmaster
post
Post #14





Grupa: Zarejestrowani
Postów: 143
Pomógł: 17
Dołączył: 8.11.2008
Skąd: Libiąż

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


Oczywiście chodzi mi o sytuację bez mod_rewrite. Bo z tym modem już da się to bezproblemowo zrobić i w ogóle zrzucić cały routing na apache'a smile.gif
Go to the top of the page
+Quote Post
marcio
post
Post #15





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Cytat(megawebmaster @ 28.02.2009, 20:28:48 ) *
Oczywiście chodzi mi o sytuację bez mod_rewrite. Bo z tym modem już da się to bezproblemowo zrobić i w ogóle zrzucić cały routing na apache'a smile.gif

Czyli??^^


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
bim2
post
Post #16





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


A nie mozesz zrobić 1 pliku index.php i w nim uruchamianie podstron. Tak powinna działać aplikacja... i tak działają frameworki.


--------------------
Go to the top of the page
+Quote Post
marcio
post
Post #17





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


NOm teraz juz jest zapozno bo mam napisany prawie caly PA i kilka modulow i musialbym przerabiac wszystko tongue.gif mowi sie trudno chyba ze bede moze z czasem przepisywal cms'a.


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
megawebmaster
post
Post #18





Grupa: Zarejestrowani
Postów: 143
Pomógł: 17
Dołączył: 8.11.2008
Skąd: Libiąż

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


Czyli można ustawić reguły Mod_Rewrite w taki sposób, żeby odpowiadały naszym potrzebom, a Apache dostarczy je jako odpowiednie zmienne. Teoretycznie router w aplikacji jest nieco łatwiejszy w obsłudze, za to CHYBA zabiera nieco więcej mocy winksmiley.jpg
Go to the top of the page
+Quote Post
marcio
post
Post #19





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Cytat
Teoretycznie router w aplikacji jest nieco łatwiejszy w obsłudze

Dlatwgo tez wybralem ten sposob to raz a dwa to nie zawsze mod_rewrite jest dostepny.


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
Qbexus
post
Post #20





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 12.07.2006

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


A ja mam problem z tym uproszczaniem linków w ten sposób bo gubi się ścieżka do obrazków i styli jak to obejść ?
A jak jestem na domena.pl/index.php
to w tablicy jest pełna ścieżka co powoduje kompletne przeszeregowanie.

Ten post edytował Qbexus 1.04.2009, 21:36:09
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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 Aktualny czas: 22.08.2025 - 09:07