opnieuw frames en frameset behouden

Installatie lukt niet? Plotseling een foutmelding. Of weet je niet hoe iets werkt. Problemen met phpBB2 kun je in dit archief opzoeken.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
Xtension
Berichten: 11
Lid geworden op: 13 mar 2003, 02:02

opnieuw frames en frameset behouden

Bericht door Xtension » 27 aug 2003, 00:57

Over het volgende kon ik dus echt helemaal niets vinden binnen dit forum...

Ik heb mijn forum in een frameset opgenomen. Ik heb dus een index.html waarin meerder frames zijn opgenomen en dan ook het forum (/forum/index.php).
Laten we voor het gemak stellen dat er 2 frames zijn.

Twee situaties:
Wanneer bijvoorbeeld een gebruiker een link maakt naar een ander topic binnen het forum, dan opent die link in een nieuwe pagina. Dit is prima om weer eenvoudig terug te keren naar je originele topic, maar het zou ook leuk zijn als je andere frame(s) ook automatisch in beeld komen te staan.

Als een gebruiker geabonneerd is op een topic en hij/zij krijgt een email dat er een bericht is geplaatst, staat de link in de email.
Door op de link te klikken, komt het topic in beeld, maar ook weer zonder de frames die je in gebruik hebt. Zelfde kwestie als boven.


Heeft iemand hier al ooit een oplossing voor bedacht?
Of is het volslagen onmogelijk?

Gebruikersavatar
SPyKoN
Berichten: 1224
Lid geworden op: 27 aug 2003, 07:41
Locatie: België
Contacteer:

Bericht door SPyKoN » 27 aug 2003, 07:43

Dit is onmogelijk in frames. Daar heb je PHP voor nodig!

Xtension
Berichten: 11
Lid geworden op: 13 mar 2003, 02:02

LEKKER PUH!

Bericht door Xtension » 28 aug 2003, 19:12

Na veel, heel veel gekraak in de hersenen, is het me toch gelukt om iets voor m'n eigen probleem te vinden. Op de eigen site van PHPBB kwam ik ook een topic tegen en daarin word je verwezen naar een JavaScript site en met de combinatie van die twee ben ik aan het werk gegaan.

De uitleg:
We gaan ervan uit dat je forum draait op een site met 2 frames, namelijk een leftframe en je hoofdframe.
Je frames staan gedefinieerd in het bestand index.html. Deze bouw je als volgt op:

Code: Selecteer alles

<HTML>
 <HEAD>
  <TITLE>Index-pagina</TITLE>
 </HEAD>
 <SCRIPT LANGUAGE="JavaScript">
 <!--
 var correct_frame = true;

 document.write('<FRAMESET COLS="150,*">');
 document.write('<FRAME SRC="left.html" NAME="left">');
 document.write('<FRAME SRC="' + (location.search ? location.search.substring(1) : "./forum/forum.php") + '" NAME="hoofd">');
 document.write('</FRAMESET>');
 //-->
 </SCRIPT>
</HTML>
Dit is je index.html, als je deze gewoon opent, dan opent je leftframe zich en forum.php in het hoofdvenster.

Nu krijgt iemand een email met daarin de verwijzing naar http://www.jedomein.nl/forum/viewtopic.php?t=10.
Normaal gesproken als je op die verwijzing klikt, opent zich het forum op de juiste locatie, maar ontbreekt het leftframe.
Daarom zet je de volgende code in je overall_header.tpl:

Code: Selecteer alles

-------[FIND]-------
<title>{SITENAME} :: {PAGE_TITLE}</title>
----[AFTER ADD]-----
<SCRIPT LANGUAGE="JavaScript">
 <!--
  var plaats = window.location.href;

  if(parent.location.href == self.location.href)
   window.location.href = ("http://www.jedomein.nl/index.html?" + plaats);
 //-->
</SCRIPT>
Deze overall_header.tpl wordt immers bij elke pagina die je opent ingevoegd (dus ook bij je viewtopic.php) en die controleert of het venster wel of niet in frames staat. Is dit niet het geval, dan wordt je index-pagina geopend met als hoofdframe je viewtopic.php.

Het lijkt allemaal nog best ingewikkeld, maar als je het uitvoert, valt het wel te begrijpen!

Succes!

Gesloten