Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][PHP] Problem z przyjaznymi linkami - HASZ
Forum PHP.pl > Forum > Przedszkole
bordovy
cześć smile.gif
Prawie wszystkie przyjazne linki już działają... No właśnie - "prawie" robi WIELKĄ różnicę wink.gif
Pozostał mi tylko jeden link do zmiany i od kilku dni nie mogę tego rozwalić

Oryginalny, "stary" link:
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=last&id=2661

powyższy link przekierowuje na
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=show&id=2661&pg=0#n2865

Te "stare" linki działają poprawnie. Więc chcę to przełożyć na przyjazne, lecz z tym haszem nie śmiga.

Analogicznie, jak daję tak:
Kod
http://www.costam.pl/test_/forum,kategoria,5,last,2661.html

to chciałbym, by przerzuciło mnie na
Kod
http://www.costam.pl/test_/forum,kategoria,5,show,2661,pg,0#n2865.html


No i tu jest problem. Bo jak w htaccess daję w RewriteRule hasz #, to albo nic mi nie pokazuje, albo wywala 500... (w zależności,czy daję normalnie, czy z backslashem).

Jest jakieś rozwiązanie:
Kod
http://www.costam.pl/test_/forum,kategoria,5,show,2661,pg,0,show,2865.html

ale w tym momencie pokazuje mi tylko ostatni post sad.gif

Jakieś pomysły? Ktoś... coś...?

trueblue
Pokaż tą regułę z hashem.
bordovy
Między innymi:
Kod
RewriteRule ^([^/]*),kategoria,([^/]*),([^/]*),([^/]*),([^/]*),n\#\([^/]*)\.html$ /test_/modul.php?op=$1&category=$2&cmd=$3&id=$4&pg=$5\#\n$6 [L]

albo
Kod
RewriteRule ^([^/]*),kategoria,([^/]*),([^/]*),([^/]*),([^/]*),n#([^/]*)\.html$ /test_/modul.php?op=$1&category=$2&cmd=$3&id=$4&pg=$5#n$6 [L]
trueblue
Nie możesz przepisać/przekierować z hasha na coś innego. Możesz przepisać/przekierować tylko na adresem z hashem.
bordovy
Jeszcze raz:
"stary" link
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=last&id=2661

to po zmianie:
Kod
http://www.costam.pl/test_/forum,kategoria,5,last,2661.html

nowy link (ten powyższy) ma regułę:
Kod
RewriteRule ^([^/]*),kategoria,([^/]*),([^/]*),([^/]*)\.html$ /test_/modul.php?op=$1&category=$2&cmd=$3&id=$4 [L]


********
"stary" link, ten na który jest przekierowanie
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=show&id=2661&pg=0#n2865

to po zmianie:
Kod
http://www.costam.pl/test_/forum,kategoria,5,show,2661,pg,0#n2865.html

ale podane reguły, czyli
Kod
RewriteRule ^([^/]*),kategoria,([^/]*),([^/]*),([^/]*),([^/]*),n\#\([^/]*)\.html$ /test_/modul.php?op=$1&category=$2&cmd=$3&id=$4&pg=$5\#\n$6 [L]

albo ta
Kod
RewriteRule ^([^/]*),kategoria,([^/]*),([^/]*),([^/]*),([^/]*),n#([^/]*)\.html$ /test_/modul.php?op=$1&category=$2&cmd=$3&id=$4&pg=$5#n$6 [L]

nie hulają... i ni chu chu sad.gif
trueblue
Jeszcze raz: nie możesz przekierować z hasha, możesz przekierować tylko na hash.

Jeśli zmienisz budowę linków na stronie na przyjazne, tak aby nadal na końcu był ten sam hash, to nie jest potrzebne w ogóle zajmowanie się nimi (hashami).
bordovy
Ale ja przekierowuję NA hasz:
czyli ten "stary" link:
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=last&id=2661

przekierowuje na ten "stary" link:
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=show&id=2661&pg=0#n2865


Czyli po zmianie odpowiednio:
Kod
http://www.costam.pl/test_/forum,kategoria,5,last,2661.html

przekierowuje na ten link:
Kod
http://www.costam.pl/test_/forum,kategoria,5,show,2661,pg,0#n2865.html



"stare" linki działają poprawnie.
A jeśli chodzi o nowe, to działa ten pierwszy, z którego przekierowuję na hasz, ale już link z haszem nie hula

Cytat(trueblue)
Jeśli zmienisz budowę linków na stronie na przyjazne, tak aby nadal na końcu był ten sam hash, to nie jest potrzebne w ogóle zajmowanie się nimi (hashami).

Mogę to oczywiście zrobić, tylko jak wtedy miałby wyglądać taki link (z haszem)?
Hasz pozwala na "zjechanie" strony by pokazać ostatni post
trueblue
Ale wartość hasha nie jest dostępna w parametrach.

bordovy
No i właśnie o to się rozchodzi smile.gif

Biorąc pod uwagę Forum PHP i ten temat, to w parametrze jest hasz, ponieważ z tej strony:
Kod
http://forum.php.pl/index.php?showtopic=256948&view=getlastpost

jest przekierowanie na:
Kod
http://forum.php.pl/index.php?showtopic=256948&pid=1219288&st=0&#entry1219288


Ja rozumiem, że po zmianie (jeśli chodzi o moją stronę), linki z haszem nie działają. Działają tylko stare linki (z haszem też).

Tylko za choinkę nie wiem, jak zmienić stary link:
Kod
http://www.costam.pl/modul.php?op=forum&category=5&cmd=show&id=2661&pg=0#n2865

na podstawie którego zrobię odpowiedni link, zmieniając też RewriteRule w htaccess

Przecież nie musi on tak wyglądać... Chodzi tylko o to, by po przekierowaniu zjechał mi na ostatni post w danym temacie smile.gif
Może być nawet bez hasza (a nawet byłoby lepiej!), byleby tylko otrzymać pożądany rezultat
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.