Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: /article/title - mod rewrite
Forum PHP.pl > Forum > PHP
Teamon
Witam.

Wordpress tworzy linki do artykulow na zasadzie

www.example.com/index.php/tytul-artykulu

i teraz pytanie na jakiej podstawie php wykonuje zapytanie do bazy o artykul?
domis86
1.pobierasz z GETa zmienna zawierająca tytul (bedzie ona w GET dzieki mod_rewrite, ktory przepisze link)
2.szukasz w bazie artykulu o tym tytule
Teamon
chyba jednak nie, tytul w linku to "tytul-artykulu-z-polskimi-znakami-male-litery"
a w bazie jest "Tytuł artykułu z polskimi znakami małe litery"
domis86
to mozesz dodac jedną kolumne w tabeli z artykułami, gdzie umiescisz wlasnie tytuł w takiej postaci.
Gdy bedziesz szukał artykułu to wlasnie wg tej kolumny, a nie normalnego tytulu
abc667
no to go trzeba przekształcić tą samą funkcją jaka użyta była do tworzenia linka
Teamon
a co w przypadku:

"Tytuł raz dwa trzy" => "tytul-raz-dwa-trzy"
"tYtYl RAZ dwa TRZY" => "tytul-raz-dwa-trzy"

?
domis86
Musisz zabronic stosowania takich podobnych tytułów.
Po prostu sprawdzasz czy jest juz taki bazie przy dodawaniu, edycji artykulu - jak jest to wyswietlasz blad walidacji czy cos - po prostu nie dopuszczasz, żeby znalazly sie w bazie 2 o takiej samej wartosci w tej kolumnie.
Strzałek
O rewrite i routerze pisałem na blogu - Przyjazne URLe - piszemy router. Wracając natomiast do pytania.

Rozwiązaniem jest trzymanie aliasu w oddzielnej kolumnie. Mając newsy z tytułem Mój super news, przy dodawaniu przerabiasz tytuł na moj-super-news. Możesz w ogóle dać możliwość aby w inpucie każdy wpisał sobie ręcznie alias a jak nie wpisze to automatycznie wygeneruje.

Należy pamiętać o jeszcze jedynm ważnym elemencie. Mianowicie dobrą reczą jest do adresu dodać id - strona.pl/432/moj-super-news. Dzięki temu w zapytaniu pytamy o news z konkretnym id które każdy news ma inne. Pytając o alias może wystąpić kolizja winksmiley.jpg

Pozdrawiam.
domis86
Cytat(Strzałek @ 24.06.2007, 10:22:42 ) *
Należy pamiętać o jeszcze jedynm ważnym elemencie. Mianowicie dobrą reczą jest do adresu dodać id - strona.pl/432/moj-super-news. Dzięki temu w zapytaniu pytamy o news z konkretnym id które każdy news ma inne. Pytając o alias może wystąpić kolizja winksmiley.jpg

Dobrze pomyślane smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.