Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przekierowanie
kostek00
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Przeczytałem trochę tematów, ale nie znalazłem tego czego szukałem i mogę powiedzieć, że jestem laikiem jeśli chodzi o php.
Potrzebuję skryptu, który przekieruje na stronę C jeśli osoba weszła z innej strony niż A, a jeśli weszła ze strony A to niech przejdzie na właściwą B. Mam nadzieję, że w miarę zrozumiale to jest wytłumaczone. W zasadzie jeśli w htaccess da się to zrobić to też mogło by być. Może być, że sam wpiszę na jaką stronę ma przekierować lub nawet na kilka, z których skrypt później wylosuje, a może być żeby wracało tam skąd osoba przyszła.

Ten post edytował kostek00 17.06.2010, 07:21:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
Wave
post
Post #2





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 13.01.2005

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


Musisz użyć refererów, z tym że nie każdy je przesyła.

http://www.php.net/manual/en/reserved.vari...hp#HTTP_REFERER
Go to the top of the page
+Quote Post
kostek00
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Jak już pisałem jestem laikiem i przez to trochę nie bardzo to rozumiem. Sorki.
Go to the top of the page
+Quote Post
Wave
post
Post #4





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 13.01.2005

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


Czego nie rozumiesz?

  1. if( $_SERVER['HTTP_REFERER'] == A )
  2. header('Location: B');
  3. else
  4. header('Location: C');
Go to the top of the page
+Quote Post
kostek00
post
Post #5





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Nawet jak połączenie pochodzi z A to i tak od razu leci na C.
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




  1. var_dump($_SERVER['HTTP_REFERER']);

Co ci wyswietla? Czy to co ci wyswietli to jest Twoje A?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kostek00
post
Post #7





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Wchodzę na stronę gdzie jest umieszczony link z A, klikam na niego ale zamiast iść do B to od razu przechodzi do C i nic w między czasie nie wyświetla.
A z tym co podałeś to nie wiem co zrobić tongue.gif
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
A z tym co podałeś to nie wiem co zrobić tongue.gif
I po co ten jęzor? Nie dość ze na banalnych sprawach się wykładasz to jeszcze z jęzorem wylatujesz...

  1. var_dump($_SERVER['HTTP_REFERER']);
  2.  
  3. if( $_SERVER['HTTP_REFERER'] == A )
  4. header('Location: B');
  5. else
  6. header('Location: C');

jasniej?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kostek00
post
Post #9





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Już jaśniej. Teraz nie ważne z jakiej strony wchodzę i tak przechodzi do B i wyświetla tylko napis "NULL".
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




znaczy ze: HTTP_REFERER nie istnieje. Pisał ci juz o tym Wave:
Cytat
Musisz użyć refererów, z tym że nie każdy je przesyła.
smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kostek00
post
Post #11





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Niedobrze, dalej nie rozumiem. Właśnie dlatego chciałem żeby zostawić temat w dziale poszukiwanych skryptów, bo sam nie zrobię tego, a pisanie mi teoriami na pewno nic nie da.
Go to the top of the page
+Quote Post
Wave
post
Post #12





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 13.01.2005

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


zasadnicze pytanie, czy masz dostęp do strony A?
jeżeli tak - zostaje przekazywanie informacji getami, postami, ciastkami lub sesjami (ten sam serwer)
jeżeli nie - nie istnieje rozwiązanie problemu które zadziała u każdego.
Go to the top of the page
+Quote Post
kostek00
post
Post #13





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 13.12.2008

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


Nie mam.
A czy za pomocą htaccess nie da się tego zrobić? Chodzi mi czy nie mogła by strona przyjmować tylko bezpośrednich połączeń (czyli po wpisaniu linku) lub ze strony A?

Edit:
Bawiłem się trochę z htaccess i po części wychodzi to co chcę:
  1. ErrorDocument 403 <a href="http://urusai.pl" target="_blank">http://urusai.pl</a>
  2.  
  3. order allow,deny
  4. allow from all
  5. deny from 66.197.250.118
  6.  
  7. RewriteEngine on
  8. RewriteCond %{HTTP_REFERER} ^http://(www\.)?noon.site50.net/.*$
  9. RewriteCond %{HTTP_REFERER} ^http://(www\.)?urusai.pl/.*$
  10. RewriteRule ^.* - [F]
Jeśli nie ma linijki 9 i 10 to cały czas przekierowuje na urusai.pl, jeśli jednak one są to przyjmuje każde połączenie. Jakieś pomysły aby przyjmowało połączenie tylko z noon i urusai? Może być nawet, że sam wypisać będę musiał IP lub adresy stron z których nie chcę przyjmować połączeń.
P.S. w pierwszej linijce pokazuje to: <a href="http://urusai.pl" target="_blank">http://urusai.pl</a>, ale tak naprawdę jest sam adres urusai.
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 Aktualny czas: 20.08.2025 - 22:36