Aby nie zakładać kolejnego tematu, a że ten sam rozwiązałem czesciowo to go edytuje smile.gif. Może tym razem ktoś pomoże. Więc mam regułki w .htaccess :

Kod
RewriteRule ^modules-([^-]+)-([^-]+)-([^-]+)\.htm$ /modules.php?name=$1&cat=$2&page=$3 [L]
RewriteRule ^modules-([^-]*)\.htm$ modules.php?name=$1 [L]
RewriteRule ^index.htm$ index.php

oraz funkcje, dynamicznie zmieniającą adresy "brzydkie" na "ładne" :
  1. <?php
  2. function rewrite_url_filter($data)
  3. {
  4.  $link = $data[0];
  5.  $link = ereg_replace('"$', '', $link);
  6.  $link = explode('="', $link);
  7.  $_link = $link[0];
  8.  $link = $link[1];
  9.  $link=preg_replace('#modules.php?name=([A-Z]*)&cat=([0-9]*)&page=([0-9]*)#si','modules-1-2-3.htm', $link);
  10.  $link=preg_replace('#modules.php?name=([A-Z]*)#si','modules-1.htm', $link);
  11.  $link=preg_replace('#index.php#','index.htm',$link);
  12.  
  13.  $link = $_link.'="'.$link.'"';
  14.  return $link;
  15. }
  16. function rewrite_ob_filter($string)
  17. {
  18.  return preg_replace_callback('/(href|src|action)s*=s*"[^"]+"/', 'rewrite_url_filter', $string);
  19. }
  20. ?>

W pliku .htaccess jest wszytko ok bo jak wpisuje ręcznie "ładne adresy" to działają. Problem pojawia się z tą funkcją. Mam linki:
Kod
modules.php?name=news

oraz
Kod
modules.php?name=news&cat=2&page=1

Funkcja zamieszczona wyżej powinna zmienić te linki na modules-news.htm oraz modules-news-2-1.
Niestety tak się nie dzieje. Pierwszy link (modules.php?name=news) zmienia mi poprawnie ale jak chce potem przejść dalej to już kolejny wygląda tak: modules-news.htm&cat=2&page=1. Nie mam zielonego pojęcia dlaczego tak się dzieje sad.gif Nawet google mi nie pomogło ale mam nadzieje, że Wam się uda smile.gif Pozdrawiam i z góry dzięki za pomoc.

EDIT: Ok rozwiązałem sam problem.