Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] System menu, podobny jak na wortalu PHP - jak to działa?
zurek
post 19.08.2010, 18:19:32
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 4.09.2007
Skąd: Kraków

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


Witam
Otóż od jakiegoś czasu zastanawiam się jak zrobić dobry system menu. Chodzi mi o coś podobnego jak na wortalu PHP. Może nie tyle mam problem z napisaniem tego, po prostu nie wiem jak powinna wyglądać struktura takiego menu, jakie dane przekazywać w adresach, co zrobić żeby to działało jak najbardziej efektywnie. Poza tym mam jeszcze jedno pytanie. Jak dotąd adresy na mojej stronie wyglądały mniej więcej tak:
Kod
http://strona.pl/dzial-5.html
lub
Kod
http://strona.pl/tutorial-74.html
Co zrobić, żeby zamiast słowa kluczowego i identyfikatora wyświetlał się tytuł danego artykułu lub nazwa działu?

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
vermis
post 19.08.2010, 18:33:21
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 56
Dołączył: 3.06.2010
Skąd: Tarnowskie Góry

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


Po pierwsze musisz użyć mod_rewrite i przekierować wszystkie żądania do index.php.
W index.php sprawdzasz co masz w zmiennej $_SERVER['REQUEST_URI'] i dopasowujesz do jakiegoś wzorca za pomocą wyrażeń regularnych lub po prostu tworzysz tablicę mapowań adresów na odpowiednią treść.


--------------------
Go to the top of the page
+Quote Post
Luneth
post 19.08.2010, 18:36:01
Post #3





Grupa: Zarejestrowani
Postów: 95
Pomógł: 7
Dołączył: 16.07.2007
Skąd: Gorzów Wielkopolski

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


Co zrobić? Na jak najmniej pętlach, unikać rekurencji itp - wtedy jest najbardziej efektywnie. Jak zrobić? Spójrz do źródła html strony w przeglądarce i tam zauważysz co jest generowane pętlami, a co nie winksmiley.jpg
Linki - mod_rewrite (.htaccess) i $_SERVER['PATH_INFO'] lub (co bardziej wolę) zrobić jednego GETa np: ?m=news/tytul_newsa.

@UP - kiedy zaczynałem to nie było jeszcze żadnej odp, wyprzedziłeś mnie biggrin.gif

Ten post edytował Luneth 19.08.2010, 18:36:52


--------------------
"It's always darkest before the dawn."
Go to the top of the page
+Quote Post
Ramzaa
post 19.08.2010, 19:55:30
Post #4





Grupa: Zarejestrowani
Postów: 207
Pomógł: 17
Dołączył: 4.08.2009

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


mod_rewrite i jazda.

btw. al się najebałęm smile.gif
Go to the top of the page
+Quote Post
zurek
post 20.08.2010, 10:34:43
Post #5





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 4.09.2007
Skąd: Kraków

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


Edit: Chciałem zamienić index.php w adresie na coś bardziej przyjaznego. Niestety ForceType doprowadza mnie do szału. Robię wszystko jak należy: do .htaccess dopisuję:
Kod
<Files indexp>
ForceType application/x-httpd-php
</Files>

zmieniam index.php na samo index i nic. Nie działa.

Próbowałem też:
Kod
AddHandler server-parsed .php
<Files index>
SetHandler application/x-httpd-php
</Files>
AddHandler application/x-httpd-php .php

i to samo.

Czy to może być wina boo.pl? Czy ktoś przypadkiem nie wie czy mają tam odpowiednie ustawienia dyrektywy AllowOverride?



Ten post edytował zurek 20.08.2010, 23:29:16
Go to the top of the page
+Quote Post
Luneth
post 22.08.2010, 00:11:36
Post #6





Grupa: Zarejestrowani
Postów: 95
Pomógł: 7
Dołączył: 16.07.2007
Skąd: Gorzów Wielkopolski

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


Weź ustaw w htaccess jakąś byle jaką treść, żeby na 100% wywaliło błąd, jakiś losowy ciąg znaków. Jeśli wyskoczy Internal Server Error no to znaczy, że mod rewrite działa, jeśli strona zachowa się normalnie - nie działa.

Ten post edytował Luneth 22.08.2010, 00:11:58


--------------------
"It's always darkest before the dawn."
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: 14.08.2025 - 00:43