Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] zmiana odnośników
Forum PHP.pl > Forum > Przedszkole
Michał90
Witam,
jak za pomocą np. mod rewrite zmienić takie linki: http://mojadres.pl/?tin=6486&ulr=Moja-robota

Chciałbym mieć je takie: http://mojadres.pl/Moja-robota

Skrypcik
  1. if ($_GET['tin'] && $_GET['ulr']){
  2. $tin = intval($_GET['tin']);
  3. $ulr = urldecode($_GET['ulr']);
  4. header('Location: [url="http://www.adresstronyparterskiej.pl/przekierowanie/'.$tin.'/'.$ulr.'.html');[/url]
  5. }


Linki w bazie (ewentualnie mogę zmienić)
  1. http://mojadres.pl/?tin=6486&ulr=Moja-robota


Pozdrawiam
CuteOne
Poczytaj o mod_rewrite
Michał90
Próbowałem ale nie działa mi to poprawnie...
Zrobiłem to tak:

Kod
RewriteRule ^kat-([^-]+)/nazwa-([^-]+)/$ tin=$1&ulr=$2 [L]

kalmaceta
no ja osobiście zostawiłbym w spokoju, w tym przypadku , kombinowanie. Dodaj do .htaccess takie coś:
Kod
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php?args=$0 [PT,L]

Następnie w PHP parsuj linki - będzie szybciej wynika z mojego doświadczenia. Akurat tutaj potrzebujesz sprawdzać w tabeli /najlepiej nowej w której umieszczasz id_contentu, nicurl(PK)/ czy $args jest tram jak nie robisz co innego - podstawowy routing. Zwykle coś tak prostego:
  1. if (cached($args)) //sprawdzamy cache
  2. send_page();
  3. if ($n = sprawdz_niceurl($args))
  4. zaladuj($n); //sprawdzamy niceurls
  5. else
  6. wywołay_jakocos_tam($args);
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.