Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]mod_rewrite
-em-
post 21.06.2011, 21:27:59
Post #1





Goście







Witam,
próbuję rozkminić mod_rewrite.

RewriteRule ^links([^-]+).html$ links.php?id=$1 [L]

Gdy wpisze links1.html przeglądarka zwraca dobrą stronę tylko jak ja mam tego używać?
Mam wpisać
  1. <a href="links1.html">coś</a>
zamiast links.php?id=2.?
W ten sposob tworzy sie linki i wszedzie w na mojej stronie musze zmienić linki?
Go to the top of the page
+Quote Post
Fifi209
post 21.06.2011, 22:07:09
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Dokładnie tak jak napisałeś. Z resztą, ciężko sprawdzić? ;]


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
Daimos
post 21.06.2011, 23:19:54
Post #3





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


No co Ty, skoro wymyśliłeś już regułę

Kod
RewriteRule ^links([^-]+).html$ links.php?id=$1 [L]


Musisz jej się trzymać, a nie jakieś zabawy w html, czyli linki generujesz tak:

  1. $link = '<a href="links([^-]+).html">coś</a>';
  2.  
  3. class RewriteRuleExtension
  4. {
  5. public $linkUrl = 'links([^-]+).html';
  6. public function __call($a, $b)
  7. {
  8. return preg_replace('/\(\[\^\-\]\+\)/', $id, $this->linkUrl);
  9. }
  10. }


No i teraz już sprawa jest prosta, dajesz jedynie:

  1. $linkClass = new RewriteRuleExtension();
  2. echo '<a href="'.$linkClass->uSoLazyAlwaysCheckBeforePosting('1').'">coś</a>';


Klasę rozszerzającą Rewrite Rule możesz oczywiście rozbudować na swoje potrzeby. Pisane z palca, więc sory jeśli będą jakieś błędy, ale już dalej sobie poradzisz


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.08.2025 - 22:32