Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przyjazne URLe - dynamiczne sterowanie
Michael2318
post 20.06.2014, 11:53:42
Post #1





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

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


Witam!

Próbuję wplątać w swój skrypt dynamiczne tworzenie przyjaznych linków, tak aby nie trzeba było z każdym URL'em latać do .htaccess. Znalazłem fajny artykuł o tym od moderatora, który tutaj urzęduje - http://nospor.pl/ladne-urle.html
Tam jednak wszystko opiera się na pliku index.php. Ja w swoim skrypcie mam X takich różnych plików, w których chciałbym obsługiwać przyjazne URLe.
Wpadłem na pomysł żeby zrobić sobie jeden plik, który będzie dowodził wszystkimi URLami - odbierał to co w pasku adresu i odtwarzał na tej podstawie odpowiedni plik.
Zastanawiam się tylko jak przekazywać do skryptu o który plik konkretnie mi chodzi? Myślałem nad tym, żeby w tym urlu: jakismodul/jakasakcja/jakisparametr1 w miejsce pogrubione podawać jakąś nazwę/ID które będzie wskazywało na plik, w którym odgrywać się będzie reszta akcji. Przykładowo stworzenie takiej tablicy:

  1. 'login' => 'logowanie.php',
  2. 'index' => 'main_page.php',
  3. 'reg' => 'register.php');


I teraz jeśli w tym URLu zostanie odnaleziona któraś w fraz umieszczonych w tablicy to dany plik zostanie zaincludowany, czyli:

  1. <?php
  2.  
  3. $myPages = array(
  4. 'login' => 'logowanie.php',
  5. 'index' => 'main_page.php',
  6. 'reg' => 'register.php');
  7.  
  8. // tutaj kod z artykułu odpowiadający za podzielenie tego całego url'a
  9.  
  10. if ( in_array($_GET['module'], $myPages) ) // sprawdzamy czy w tablicy z naszymi stronami istnieje taki identyfikator jaki podał user
  11. {
  12. include('logowanie.php'); // tu wpisałem ręcznie żeby nie tracić czasu, oczywiście trzeba by przypisać wybrany element z tablicy
  13. }
  14. else
  15. {
  16. // przekierowanie na jakąś tam stronę 404
  17. }
  18.  
  19. ?>


I tutaj bym prosił o sugestie, czy dobrze myślę? Takie rozwiązanie będzie OK?

Ten post edytował Michael2318 20.06.2014, 11:57:03
Go to the top of the page
+Quote Post
nospor
post 20.06.2014, 13:19:03
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
I teraz jeśli w tym URLu zostanie odnaleziona któraś w fraz umieszczonych w tablicy to dany plik zostanie zaincludowany, czyli:

Czyli na dobrą sprawę chcesz zrobic to co jest u mnie: jeden glowny plik, ktory kieruje zaladowaniem innych. U mnie ten plik sie nazywa wlasnie index.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Michael2318
post 20.06.2014, 13:21:31
Post #3





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

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


@nospor właśnie idealnie dla mnie by było, gdybym nie musiał robić wszyzstkiego w jednym pliku tylko odbierać zwyczajnie zmienne $_GET w pliku do którego odnosi się dany link, ale wyczytałem w komentarzach pod artykułem, że skrypt ma prawo bytu jeśli wszystko znajduje się w jednym głównym pliku (u Ciebie index.php). I właśnie próbuję się do tego dostosować, nie wiem tylko czy dobrze myślę z tą tablicą przechowującą ID danego pliku i z tym include?
Go to the top of the page
+Quote Post
nospor
post 20.06.2014, 13:25:02
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Musi być jeden glowny plik, ktory rozkoduje adres. Jak chcesz miec po staremu, to pozostaje ci wszystko pisać w .htaccess

Cytat
I właśnie próbuję się do tego dostosować, nie wiem tylko czy dobrze myślę z tą tablicą przechowującą ID danego pliku i z tym include?
No może tak być


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 27.06.2025 - 03:13