skrypty w iframe

0

witam

mam strony A i B

na stronie A wrzucam taki kod:

czy w pliku skrypt.php mogę w jakiś sposób wyśledzić, że został on odpalony w iframe na stronie A ??

0

Może referrer pomoże, lecz pamiętaj, że ramki to zuo.

0

ja wiem, że zło, ale muszę się po prostu przed ramkami zabezpieczyć, dlatego pytam ;]

1

po stronie klienta w js:

if (window.opener && window.opener.open && !window.opener.closed)) window.opener.location = window.location;

oczywiście opener może mieć swojego openera, a ten swojego...

jeśli user ma wyłączonego referrera w przeglądarce, to po stronie serwera nic się nie dowiesz; jeśli jest włączony i ma wartość spoza Twojego site'u, to albo trafił tu z linka umieszczonego na innym serwerze, albo nastąpiło otwarcie strony w ramce.

jeśli referrer i js są wyłączone, to niewiele możesz zrobić. w pocie czoła da się opracować rozwiązanie, które bez js wyświetli tylko napis "włącz js", a po włączeniu js sprawdzi openera i zaciągnie treść strony przez ajax, przy czym zawartość strony będzie walidowana tokenem ważnym przez kilkanaście minut. imho walka z wiatrakami.

0

ŁF szanuję cię i podziwiam za ogrom pracy na forum i z tego powodu jakbyś napisał samo "imho walka z wiatrakami" to bym uznał, że temat wyczerpany ;]

mimo wszystko dziękuję za rozpracowanie problemu ;]

0

o, po raz pierwszy ktoś mnie docenił ;]
walką z wiatrakami nazwałem ostatnią metodę. pierwsza (z window.opener) jest prosta i z reguły niezawodna, bardzo dużo serwisów ją stosuje (np. gazeta.pl).

0

hehe to nie dobrze, że po raz pierwszy ;]

Twój sposób się sprawdza, ale mi nie chodzi o to, żeby blokować w js wyświetlanie mojej strony w ramce, a po prostu badanie czy takie coś zaszło

można by to połączyć z funkcją, która w ajax odpali plik php i zapisze, że z takiego IP i jakiejś tam strony odpalono moją w iframe :) zatem byłeś pomocny bardzo, choć niestety, nie zawsze to zadziała ;]

1 użytkowników online, w tym zalogowanych: 0, gości: 1