Toon posts:

PHP & frames

Pagina: 1
Acties:

Verwijderd

Topicstarter
is er een manier om met PHP te checken of iemand een site als een frame bekijkt of gewoon los?:?
met JavaScript is dit heel simpel:

if (window == top) {
document.write('je bekijkt deze site gewoon los.');
}
else {
document.write('je bekijkt deze site als een frame.');
}

maar met PHP lijkt het heel moeilijk te zijn.:(
hoop dat toch iemand het weet!

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

gewoon je js includen is een te makkelijke oplossing zeker?

Doet iets met Cloud (MS/IBM)


Verwijderd

php is server-side, niet client-side

Verwijderd

D2K: Ik snap je sig niet... ;)

Verwijderd

Topicstarter
volgens mij heeft kaartenhuis.nl een script die zorgt dat als je niet in frames zit, je toch in frmaes komt, het schrijft dan op die page een frameset naar de pagina die je wou, hoe is dat mogelijk?

Verwijderd

code:
1
2
3
4
5
6
7
8
9
10
11
12
<SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript"><!--
if (top != self) {
    if (document.images)
      top.location.replace(location.href);
    else
      top.location.href = location.href;
}
var x=screen.availWidth-1;
var y=screen.availHeight;
window.resizeTo(x,y);
window.moveTo(0,0);
//--></SCRIPT>

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op donderdag 03 januari 2002 14:52 schreef aquaman2002 het volgende:
volgens mij heeft kaartenhuis.nl een script die zorgt dat je doorgestuurd naar een index als je niet in de frames zit, dus het moet kunnen, weten jullie hoe ze dat doen?
Ja, met javascript. Punt. Het is onmogelijk om met php te checken of je in een frame zit of niet. Dat kan alleen clientside, dus alleen met javascript. Punt.

Exact expert nodig?


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Ik kan me ook niet zo goed voorstellen waarom je dat perse met PHP zou willen :?

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Lijkt me logisch! PHP is serverside en dan kunnen ze zijn code niet zien! ;) :+

Verwijderd

Topicstarter
kaartenhuis gebruikt voor dat geen javascript volgens mij, tis tenminste niet te zien in de source

en waraom ik dat wil, nu is de source heel makkelijk te jatten (Beeld > Bron), javascript is te langzaam :S

Verwijderd

Op donderdag 03 januari 2002 14:58 schreef aquaman2002 het volgende:
kaartenhuis gebruikt voor dat geen javascript volgens mij, tis tenminste niet te zien in de source

en waraom ik dat wil, nu is de source heel makkelijk te jatten (Beeld > Bron), javascript is te langzaam :S
zie mijn post een paar reacties terug.. DAT javascript gebruikt kaartenhuis.nl, kun je d'r zo uithalen...

Verwijderd

offtopic:
:D En ik heb nog gelijk ook!


Okay even heel basaal:
De client komt op je website, de server parst je website en de client ontvangt hem. De server krijgt alleen een request om die website te versturen naar een browser, zonder te weten of de browser een frame request of de hele pagina.
Probleem: De server (PHP dus) weet van niets (zogenaamd serverside scripten). De client wel, en daarom werkt JS wel en PHP niet.
Dus met PHP is dat niet mogelijk.

Verwijderd

Topicstarter
zie nou ook bij kaartenhuis dat je dat scriptje zo kan rippen, maar vroeger kon dat echt niet

Verwijderd

Je kunt natuurlijk een of ander stom JS scriptje zoeken wat de rechtermuis klik uitschakeld dmv een alert functie.
on.rightclick = alert('Magniet') ofzoiets...
Ik weet dat het kan; maar niet hoe (JS en /me gaan niet samen)

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

[quote]
zie nou ook bij kaartenhuis dat je dat scriptje zo kan rippen, maar vroeger kon dat echt niet

[/quote


jaja ;)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op donderdag 03 januari 2002 14:58 schreef aquaman2002 het volgende:
kaartenhuis gebruikt voor dat geen javascript volgens mij, tis tenminste niet te zien in de source

en waraom ik dat wil, nu is de source heel makkelijk te jatten (Beeld > Bron), javascript is te langzaam :S
JavaScript jatten vind ik nou niet echt een reden om huis en tuin te verzetten om perse de server op notabene frames te laten checken...

de 2e reden begrijp ik beter, maar als je het zo snel mogelijk wilt doen, moet je zorgen dat je html enkel een javascriptje bevat wat de juiste pagina laadt:

index.html:
code:
1
2
3
4
5
6
7
8
<html>
<head>
  <title>one moment please...</title>
  <script language="JavaScript">
     top.location.href="index.php";
  </script>
</head>
</html>

Dat is wel ongeveer het minieme wat je nodig hebt, dan. Nadeel is dat hij nu altijd die refresh doet, maar dat is echt matter of milliseconds

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op donderdag 03 januari 2002 15:07 schreef daniel_hoenderdos het volgende:
Je kunt natuurlijk een of ander stom JS scriptje zoeken wat de rechtermuis klik uitschakeld dmv een alert functie.
on.rightclick = alert('Magniet') ofzoiets...
Ik weet dat het kan; maar niet hoe (JS en * drm gaan niet samen)
OS en * drm ook niet?
temporary internet files? ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Topicstarter
NO RIGHT CLICKS:

<script language="JavaScript">
<!-- Begin
var message_right="eikel!\nblijf van mijn page af!"; // Message for the alert box
function click(e) {
if (document.all) {
if (event.button == 2) {
alert(message_right);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message_right);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// End -->
</script>

maar dan kan je nog steeds met Beeld -> Bron de source bekijken :(

Verwijderd

Op donderdag 03 januari 2002 15:13 schreef aquaman2002 het volgende:
NO RIGHT CLICKS:

<script language="JavaScript">
<!-- Begin
var message_right="eikel!\nblijf van mijn page af!"; // Message for the alert box
function click(e) {
if (document.all) {
if (event.button == 2) {
alert(message_right);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message_right);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// End -->
</script>

maar dan kan je nog steeds met Beeld -> Bron de source bekijken :(
rechtermuisknop indrukken en ingedrukt houden, 2x op enter drukken, rechtermuisknop loslaten :P

Verwijderd

Op donderdag 03 januari 2002 15:05 schreef aquaman2002 het volgende:
zie nou ook bij kaartenhuis dat je dat scriptje zo kan rippen, maar vroeger kon dat echt niet
kom op zeg :P

Verwijderd

Topicstarter
Op donderdag 03 januari 2002 15:10 schreef drm het volgende:

[..]

JavaScript jatten vind ik nou niet echt een reden om huis en tuin te verzetten om perse de server op notabene frames te laten checken...

de 2e reden begrijp ik beter, maar als je het zo snel mogelijk wilt doen, moet je zorgen dat je html enkel een javascriptje bevat wat de juiste pagina laadt:

index.html:
code:
1
2
3
4
5
6
7
8
<html>
<head>
  <title>one moment please...</title>
  <script language="JavaScript">
     top.location.href="index.php";
  </script>
</head>
</html>

Dat is wel ongeveer het minieme wat je nodig hebt, dan. Nadeel is dat hij nu altijd die refresh doet, maar dat is echt matter of milliseconds
maar het is juist de bedoeling dat ik dit script op hele grote sites kan zetten, om te checken of ze in frames zitten en zo niet meteen laten redirecten naar index.php3?page=(hier het url van de page) en op index.php3 staat dan een frameste die $page gebruikt

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Tsja, het kan (enigzins) wel hoor (maar nooit perfect) :)

Maak een cookie/session en stop daar allerlei leuke dingen in. Onder andere een speciale "random unieke" identifier.

Vervolgens laat je de index.php (die met het frameset) die waarde zetten en plaatst ie intern allerlei leuke url's naar de pagina's die ie opent (bijvoorbeeld page1.php?ripage1=AFAFAfasdarewrfdadadaw, terwijl in de session/cookie ook ripage1=AFAFAfasdarewrfdadadaw staat) etc per page.
In de page1.php controleer je die GET var tegen de session var als ze niet gelijk zijn weet je vrij zeker dat iemand niet via het frameset langsgekomen is.

Het is alleen wel meer werk dan zo'n javascriptje ;)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op donderdag 03 januari 2002 15:19 schreef aquaman2002 het volgende:

[..]

maar het is juist de bedoeling dat ik dit script op hele grote sites kan zetten, om te checken of ze in frames zitten en zo niet meteen laten redirecten naar index.php3?page=(hier het url van de page) en op index.php3 staat dan een frameste die $page gebruikt
ok, dan maak je er:
code:
1
top.location.href="index.php?page=" + location.href

van ;)

je zal wel wat anders bedoelen, maar ik weet nog niet wat *hint* ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1