Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przyjazny adres URL Mod_rewrite bez polskich znaków
Forum PHP.pl > Forum > PHP
aleks365
Witam

Zrobiłem przyjazny adres i otrzymuję np /download/123
a chciałem uzyskać /download/przykladowy-plik ale jak tak robię to wychodzi /download/przykładowy-plik chodzi o polskie znaki jak je usunąć a żeby działało bo jak z adresu usuwam znam (Ł) to wywala błąd i pisze nie ma takiego pliku

Podstawiłem żeby z bazy nie pobierało id tylko nazwę pliku ale nie które mają polskie znaki a chciałem je usunąć a żeby do bazy dochodziło że chodzi o to

Przykład:
mam kod php w nim pobierało mi tak download.php?file_id=123 i podstawiłem id a teraz mam podstawioną nazwę pliku i jest download.php?file_id=przykładowy+plik z tego zrobiłem /download/przykładowy-plik w pliku .htaccess i co mam dopisać tabele do bazy i tam będą przechowywane nazwy pliku bez polskich znaków czy jak bo ja bym wolał sposób taki że coś w php pokombinować

Co radzicie może ktoś mnie naprowadzi na dobrą drogę do sukcesu

Z góry dzięki
rocktech.pl
Witam.

Najlepiej daj tak /download/123/przykladowy-plik w .htaccess nie będziesz musiał nic zmieniać po prostu ostatni człon adresu będzie SEO-dekoratorem.

aleks365
ok zastosuje zobaczę co z tego wyjdzie
kiler129
Dodaj obok nazwy pliku w drugiej kolumnie nazwe pliku bez polskich znaków po prostu. Możesz ją wygenerować tak:

  1. function generateSeoFilename($title, $addExt=true) {
  2. if(function_exists("iconv")) $title = @iconv("UTF-8", "ASCII//TRANSLIT", $title); //Convert non lating letters to latin eqiv, if no iconv installed script replace it with "-"
  3. $title = str_replace(array("?", "!", ",", ".", "-", "?", "@", "#", "$", "%", "^", "&", "*", "(", ")", "+", "="), "", $title); //Remove unnsc chars
  4. $seo = preg_replace("/[^A-Za-z0-9]/", "-", strtolower($title));
  5. return trim(str_replace("--", "-", $seo), "-").(($addExt)?".html":""); //Also remove "-" from end
  6. }
aleks365
Dzięki przyda się bardzo
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.