Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> przekierowanie na właściwy link przy niestniejącym pliku
Avatarus
post
Post #1





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

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


Witam
Ostatnio przekonwertowałem forum z phpbb na smf. No i jest taki problem.
Przykładowy link z starego phpbb: http://www.silkroadonline.com.pl/phpbb/vie...c.php?t=123#123
Przykładowy link z nowego smf: http://www.silkroadonline.com.pl/forum/index.php?topic=123

niestety forum phpbb było długo dlatego też jest sporo starych linków. Jak zrobić żeby automatycznie konwertował te linki ze starych do nowych?

wymyśliłem coś takigo że zrobiłem katalog phpbb w nim plik viewtopic.php i on pobiera zmienna $_GET[t] z linku i miał za pomocą header ("location ....
przenosić do poprawnego linku na forum. Tylko że nie wiem czemu przed numer topicu wstawia się #, zawsze niezależnie od tego jak wyciągam ten numer topicu (próbowałem explodem na get[t], preg_matchem itp i dalej jest ten znak # przed numerem topicu).

Jak można temu zaradzić?
Może lepiej skorzystać z .htaccess?
Jeśli tak to jak napisać poprawnie tę formułę?

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
thornag
post
Post #2





Grupa: Zarejestrowani
Postów: 504
Pomógł: 2
Dołączył: 31.03.2006
Skąd: Londyn

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


Pokaz kod ktorym to robisz.
Go to the top of the page
+Quote Post
Avatarus
post
Post #3





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

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


było kilka wersji,ostatnia:
Kod
<?php
$wyniki=explode('#',$_GET[p]);
header ('Location: http://www.silkroadonline.com.pl/forum/index.php?topic='.$wyniki[1]);
?>


Ten post edytował Avatarus 20.06.2008, 11:22:35
Go to the top of the page
+Quote Post
wlamywacz
post
Post #4





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


Wszystkiego dane po chaszu (#) są niedostępne dla php. Używa go przeglądarka i js
Go to the top of the page
+Quote Post
matx132
post
Post #5





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

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


Cytat(Avatarus @ 20.06.2008, 10:22:02 ) *
było kilka wersji,ostatnia:
Kod
<?php
$wyniki=explode('#',$_GET[p]);
header ('Location: http://www.silkroadonline.com.pl/forum/index.php?topic='.$wyniki[1]);
?>



zrób to lepiej tak
Kod
<?php
$wyniki=$_GET['t'];
header ('Location: http://www.silkroadonline.com.pl/forum/index.php?topic='.$wyniki);
?>


i działać będzie dobrze
Go to the top of the page
+Quote Post
batman
post
Post #6





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Cytat(wlamywacz @ 20.06.2008, 14:59:24 ) *
Wszystkiego dane po chaszu (#) są niedostępne dla php. Używa go przeglądarka i js

Niestety nie mogę się z Tobą zgodzić: parse_url
Go to the top of the page
+Quote Post
wlamywacz
post
Post #7





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


Batman

Aj mój błąd. Do dzisiaj nie znałem tej funkcji mimo iż potrzebna mi jest aktualnie w mojej aplikacji (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)
Go to the top of the page
+Quote Post
Kicok
post
Post #8





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Cytat(batman @ 20.06.2008, 15:18:09 ) *
Niestety nie mogę się z Tobą zgodzić: parse_url


Fakt, ta funkcja potrafi rozpoznać #kotwicę w stringu, ale co to ma wspólnego z tematem? Tak jak mówił włamywacz: żadna #kotwica wpisana w okienko adresu przeglądarki nie dotrze do PHP, czyli w $_GET jej nie będzie.
Go to the top of the page
+Quote Post
wlamywacz
post
Post #9





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


Informacja: Funkcja nie działa na relatywnych URLach.

Czyli jak mam wildcarding u siebie to chyba to nie zadziała (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
batman
post
Post #10





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Cytat(Kicok @ 20.06.2008, 17:52:26 ) *
Fakt, ta funkcja potrafi rozpoznać #kotwicę w stringu, ale co to ma wspólnego z tematem?

Z tematem nie ma wiele wspólnego, ale prostuje to tezę, że php nie ma dostępu do danych po znaku #. Ma ale nie w przypadku adresu, który jest wpisany do przeglądarki.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 06:13