Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][jQuery] Sprawdzenie czy strona otwarta jest w ramce
pablos83
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 3.05.2006

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


Witajcie,

Czy istnieje w PHP jakaś funkcja (lub może ktoś z Was pisał taki program), która sprawdza czy strona jest otwarta w ramce (iframe).

Chcę zrobić coś takiego:
1. Użytkownik z wyników wyguglowania wchodzi na stronę, która powinna się otworzyć w ramce IFRAME.
2. Uruchamiany jest skrypt PHP/jQuery/JS który sprawdza czy strona jest otwarta w ramce.
3. Jeśli nie jest, to PHP header("Location:"); lub coś adekwatnego przekierowuje na stronę indexową i wczytuje odpowiednią stronę z wyników wyszukiwania do ramki IFRAME.

PS: Niestety klient, dla którego robię zlecenie nie akceptuje opcji bez ramki, ponieważ chodzi mu o ciągłe odtwarzanie muzyki w tle nawet przy przechodzeniu (przeładowaniu) na kolejną stronę. W zasadzie ramki mogłoby nie być, ale nie znalazłem innego rozsądnego sposobu na ciągłość w odtwarzaniu muzyki.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kilas88
post
Post #2





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

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


W JavaScript można to łatwo wykonać. Generalnie zarządzanie różnymi okienkami (w tym ramkami) jest proste i obsługiwane z jednego obiektu window.

Na myśl mi przyszedł jednak inny pomysł (IMG:style_emoticons/default/biggrin.gif) wystarczy odwrócić działanie skryptu zabezpieczającego przed Clickjackingiem, tj.

Kod
<script type="text/javascript">
if (top != self) {
    top.location=self.location;
}
</script>

na

Kod
<script type="text/javascript">
if (top == self) {
    top.location = 'http://adres-strony-z-ramkami/wlasciwa-ramka';
}
</script>


Przy czym kod zamieszczasz tylko w podstronach, które muszą być uruchomione w ramkach. To wszystko (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował kilas88 28.07.2010, 21:51:20
Go to the top of the page
+Quote Post

Posty w temacie


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: 9.10.2025 - 14:21