Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] System menu, podobny jak na wortalu PHP - jak to działa?
zurek
post
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
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
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 (IMG:style_emoticons/default/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 (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował Luneth 19.08.2010, 18:36:52
Go to the top of the page
+Quote Post
Ramzaa
post
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 (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
zurek
post
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
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
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 16:11