Archief - Waarom met iframes wel en met frames niet?

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Jive1

Legacy Member
Hey!

Aansluitend aan mijn vorig topic ( frames do not respond ), wou ik toch nog even tonen dat mijn vraag niet onterecht was.

Ik heb tweemaal dezelfde website klaarstaan, éénmaal op Untitled , en daar werk ik met iframes, en éénmaal op Untitled , en daar werk ik met gewone frames.

In beide gevallen is dat hetzelfde menu, en alle andere contentsbestanden zijn verder ook dezelfde. Maar met iframes wil ik liever niet werken omdat dan, naargelang de schermresolutie van de bezoeker, onderaan wel wat fout kan gaan op het scherm.
De onderkant van het beeld valt soms weg, of soms blijft er een grote lege ruimte over. Echter, bij werken met gewone frames niet zo is.

Maar! Gebruikmakend van iframes werkt dat menu wél, en gebruikmakend van gewone frames werkt dat menu niet.

Kan iemand me uitleggen waarom dit zo is?

Greetz
Jive1

Jive1

Legacy Member
Hey!TiZon,

Wel, dat klopt, ik dacht toch dat ik dat zo aangeduid had.
Kijk, ieder set van drie bestanden bevat één van hetvolgende type:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Welkom</TITLE>
</HEAD>
<FRAMESET rows="100,*" border="0">
<FRAME src="welkom1.html" border="0" name="top"">
<FRAME src="welkom2.html" border="0" name="main">
</FRAMESET>
</HTML>

waarin ik de namen "top" en "main" gebruik.
De twee andere bestanden moeten dan terechtkomen in "top"-frame en in "main"-frame.

Normaal zou ik denken dat het zo in orde is, of zie ik ergens over? Heb ik ergens iets vergeten?
Greetz
Jive1

TiZon

Legacy Member
Je moet het in je A-tag bijzetten als ik me niet vergis (frames zijn al even geleden hier :) )

zo iets:

Code:
<a href="rondleidingen.html"><IMG SRC="img/rondleidingenrood.gif" width="110" border="0"></a>

Moet worden:
Code:
<a href="rondleidingen.html"><IMG SRC="img/rondleidingenrood.gif" width="110" border="0" target="main"></a>

Bart

GregoryCo

Legacy Member
idd

En zoals ge al veel hebt gehoord, gebruik gewoon geen frames :s

adrianhates

Legacy Member
GregoryCo zei:
idd

En zoals ge al veel hebt gehoord, gebruik gewoon geen frames :s

Idd.

Iframes gebruik je alleen voor bepaalde functionaliteiten.. Als je bvb een andere website in uw website wil previewen. Maar daar blijft het naar mijn mening bij!

Er zijn betere alternatieven om dynamisch content in je pagina te laden met bvb AJAX van jQuery! Daarbij moet je natuurlijk nadenken over het SEO aspect en oftewel zorgen dat al uw content op 1 pagina staat ofdat al uw links doorlinken naar een andere volwaardige pagina met content, INDIEN javascript afstaat! Puur voor indexatie

Als je geen ajax of andere javascript functionaliteit wilt gebruiken, leer dan met php werken. Want de enige reden dat ik kan bedenken om tegenwoordig nog met frames te werken is het opsplitsen van uw code in logische blokken ( header , footer , menu etc.. ). Daarvoor bestaat de super handige include functie in php en dat is ook hetgeen dat ge zou moete gebruiken in de tweede van fase van webdesign/webontwikkeling! De eerste fase is, natuurljk, een deftige semantische pagina met xhtml en css validerende code opbouwen! ( zonder frames, kies gewoon transitional doctype of (en liefst) het strict doctype. Als ge direct pro wilt gaan gebruikt dan de html5 doctype.. :p )

Jive1 zei:
Ik heb tweemaal dezelfde website klaarstaan, éénmaal op Untitled , en daar werk ik met iframes, en éénmaal op Untitled , en daar werk ik met gewone frames.

Die websites werken van geen hoos he? Als ge een beetje kijkt ziet ge dat ge uw comment line niet goed afsluit.. Als ge een punt probeert te maken faalt dan niet zo aub..

En voor de rest , ik ben dat frame en iframe gezever echt beu hier :) I request "a slotje " !

Jive1

Legacy Member
Hey!
Goeie morgen!
Goed! Ik geef toe dat ik maar een amateurke ben, en dat ik een probleem heb om op mijn eentje PHP en enkele andere zaken onder de knie te krijgen....
Vandaar dat ik ook zoveel mogelijk hou aan eenvoudige systemen.
Ik ben niet meer van de jongsten, maar probeer bij te leren daar waar ik kan. Ik zat zelfs al niet meer op de schoolbanken toen in 1958 op de Expo58 de eerste computer werd voorgesteld, die ons toen allemaal deed verwonderd opkijken. De computer is gegroeid toenl ik al ouder was. Jullie hebben het voordeel dat jullie opgegroeid zijn in een periode dat de computer al lang als een gekend toestel bestaat.
Ik heb wel zelf geleerd om eenvoudige website samen te stellen, toen ik nog een pak jonger was, op een IBM XT was dat nog, en dat was toen eigenlijk alleen nog maar html en onder andere frames gebruikt werden. Kijk niet naar wat ik nu slecht doe, maar probeer ook eens te zien naar wat ik al goed doe?....
Ik besef dat PHP dé oplossing brengen kan, zonder al te ver in die gecompliceerde nieuwe systemen te moeten duiken. En nog andere systemen ook. Ik heb trouwens reeds Wampserver geïnstalleerd en ik gebruik Alleycode HTML-Editor, ik heb me ook NuSphere aangeschaft. Allemaal met de bedoeling om me wat te verdiepen in die nieuwe systemen. Maar het is niet zo gemakkelijk je weg te vinden in die doolhof van de vele systemen die er nu zijn, als je niet op de schoolbank of niet onder leiding van iemand die het allemaal goed kent en er tijd voor neemt, kan leren, maar alles als een amateur zelf wil proberen uit te vissen, met hier en daar wat uitleg te vragen aan jongeren die het beter kennen dan ikzelf...
Wie zet me op weg om met behulp van PHP bijvoordbeeld mijn eerste website op te bouwen die me een resultaat geeft dat vergelijkbaar is met wat ikzelf totnutoe maakte, en wat je gezien hebt, maar dan zonder frames? Ik wil iets maken met een overzichtelijk vrij statisch menu bovenaan op het scherm, zoals je al kon zien, en waar dan verder alleen de inhoud onderaan mag variëren. Ik heb dat beloofd aan een vriend die me vroeg om zo eens iets voor hem te maken, en hij vond wat ik al had een schitterend begin.
Ik wil dus geen vragen stellen die dom lijken maar dat eigenlijk niet zijn. Ik stel zulke vragen omdat ik wil leren. Als men wil leren kan men geen domme vragen stellen, maar misschienn wel domme antwoorden krijgen.
Niet dat jullie antwoorden dom zijn, maar op z'n minst waren ze geen antwoorden op mijn vragen....
Sorry als dit weer arrogant zou lijken ( ik begrijp nog steeds niet dat iemand me in mijn vorig topic als arrodant aanzien heeft ), maar dat is het niet! Ik wil alleen maar verduidelijken wat ik reeds kan en nog wens te leren, en verder zoek ik wat hulp....
Greetz
Jive1

Jive1

Legacy Member
Hatuurlijk ga ik dat leren!
Ik gebruik al wel div's hier en daar...

Curahee Q

Legacy Member
Hetgeen waar jij php voor nodig hebt zijn echt maar 3 regeltjes. Er zitten echter nog andere dingen niet goed in het design van je website zoals het opbouwen aan de hand van tables.

Ik ben ook ooit zo begonnen en ik denk de meeste hier maar als je iets of wat een deftige site wilt die goed is opgebouwd begin je in mijn ogen opnieuw.

Je bouwt vervolgens je website op aan de hand van div's en css.
css -> CSS Tutorial

Ik kan nu niet meteen een goeie website vinden die het div-gedoe goed uitlegd. Als ik er 1 vind post ik hem zeker. Voor de rest gewoon wat googlen.

Als laatste en gemakkelijkste stap voeg je php toe.
include
Met de include functie kan je content van een ander bestand includen in je bestand waar je dit aanroept.
PHP:
<?php
      include('contact.inc');
?>

Ik gebruik voor mijn include files altijd de extensie .inc omdat ik dan weet dat het in mijn mainpagina wordt geincludeerd. Maar die extensie is vrij te kiezen.

Wat staat er dan in contact.inc?
Wel enkel de inhoud van de contactpagina. Dus in principe enkel
HTML:
<p>Contacteer mij op [email protected]</p>
Dus helemaal geen <html><head><title>Titel van de pagina</title></head><body>...</body></html>-gedoe meer. Enkel de inhoud dus.

Hoe maak ik die include dynamisch?
Waarschijnlijk heb je op websites al wel eens gezien dat er een pagina stond index.php?inc=contact. Dat woordje contact kan je als volgt ophalen uit de adresbalk.
PHP:
<?php
$pagina = $_GET['inc'];
?>
$pagina is hier een variabele en met $_GET['inc'] haal je de waarde van inc (in dit geval) contact uit de adresbalk.

Een ander voorbeeldje.
De pagina is index.php?page=home
PHP:
<?php
$pagina = $_GET['page'];
?>
Nu nog de include opdracht eraan toevoegen.
PHP:
<?php
$pagina = $_GET['page'];

include($pagina . '.inc');
?>

De eerste '.' (punt) in de include koppelt de variabele $pagina aan de extensie .inc. Wat er dus werkelijk staat is
PHP:
<?php
$pagina = 'home';

include('home.inc');         // $pagina wordt vervangen door zijn equivalente waarde
?>

In je menu zet je vervolgens
HTML:
<a href="index.php?page=home">Startpaginaq</a>
<a href="index.php?page=geschiedenis">Geschiedenis</a>
<a href="index.php?page=contact">Contact</a>
enzovoort

Dat is in het kort uitgelegd hoe het in zijn werk gaat met php en dus zonder frames. Als je daar zit kan je best wel nog wat uitleg vragen want er is nog niets gedaan aan de veiligheid.
Voor meer php -> http://www.w3schools.com/php/

metalleke

Legacy Member
Je hebt dan toch specifieke configuratie gedaan op de webserver Curahee Q?
Want normaal kun je .inc files gewoon uitlezen als tekstbestanden. Zou dit toch zeker erbij vermelden ;)

Curahee Q

Legacy Member
En waarom zou ik een configuratie moeten doen? Die extensie bij een include mag van om het even wat zijn (denkik) .txt, .html, .inc, .php. Heb nog niet getest of het ook effectief gewoon .f ofzo mag zijn.

adrianhates

Legacy Member
Curahee Q zei:
En waarom zou ik een configuratie moeten doen? Die extensie bij een include mag van om het even wat zijn (denkik) .txt, .html, .inc, .php. Heb nog niet getest of het ook effectief gewoon .f ofzo mag zijn.

Het gaat er om dat hij bedoeld dat .inc ook gewoon kan uitgelezen worden zonder dat de php geparsed wordt. Je kan dat ook in .htaccess aanpassen.

AddHandler application/x-httpd-php .inc

Als er gewoon html instaat is da echter vrij nutteloos.. :p

bloodywolf

Legacy Member
Frames zijn ouderwets en zijn omslachtig. De dag van vandaag wordt alles gemaakt met Divs en CSS. Het is zelfs zo dat volgens de W3C regels, Design & vormgeving compleet moet gescheiden zijn.

metalleke

Legacy Member
adrianhates zei:
Het gaat er om dat hij bedoeld dat .inc ook gewoon kan uitgelezen worden zonder dat de php geparsed wordt. Je kan dat ook in .htaccess aanpassen.

AddHandler application/x-httpd-php .inc

Als er gewoon html instaat is da echter vrij nutteloos.. :p

Dit was inderdaad wat ik bedoelde.
Ik heb al van sommige mensen gezien dat er gevoelige gegevens in include files staan, welke dan gewoon uitgelezen kunnen worden.

Jive1

Legacy Member
Hey!
Ik was dus begonnen aan die website met de kennis die ik al had....
Blijkbaar zal ik het dus toch wel om een andere boeg moeten gooien.
Ik was echter al een tijdje bezig om de tutorial te betsuderen die ik vond op HTML en CSS tutorials , en misschien moet ik dan alles maar opnieuw beginnen en proberen te werken volgens de regels die daar staan....
Maar!... Hoe breng ik dan het menu, zoals ik gemaakt had, daarin over? Dat menu heb ik stukje voor stukje opgebeouwd met eigen gemaakte knoppen en gebaseerd op opgedane kennis van eerder. Hoe breng ik dat dan over naar de nieuwe design van mijn page, met div's en css en met php werkend, en wel zo dat het menu liefst helemaal hetzelfde blijft? En ook zou de inhoud van alle onderdelen, wanneer ik een bepaald onderwerp kies, moeten kunnen switchen op ongeveer dezelfde menier, met scrollbar enzomeer...
Ik had immers eerst uitgebreid gezocht naar een mogelijkheid om te werken met een dropdown-menu, bovenaan, op liefst zo klein mogelijke ruimte, maar toen ontdekte ik dat een dropdown-menu niet over de framegrens heen kan. En dus moest ik zelf wel wat maken...
Wat dan resulteerde in een type menu, dat je niet zo maar vindt, maar dat mijn vriend wel erg beviel. Ik wil dat dus ongeveer zo houden zoals het nu is.
Ik ga alleszins eens zorgen dat ik de methode van werken die jullie me nu aanraden zo snel mogelijk kan toepassen. Dat zal mijn vriend wel wat geduld moeten kosten...
Greetz
Jive1

GregoryCo

Legacy Member
De link die je gebruikt van sceneone is een goeie.
Wat betreft dat menu zal dat moeilijk worden om zo te positioneren. Wat je natuurlijk wel kunt doen is ieder menu item (die is opgebouwd uit een list, zie een horizontale navigatie in een list) een apart id geven en zo positioneren, maar dat is onbegonnen werk met enkel html/css

Jive1

Legacy Member
Hey!
En hoe zou dat dan volgens jou best kunnen? Hoe kan ik via een ander systeem een menu maken dat ongeveer uitziet en werkt als wat ik reeds maakte, ttz met verwisselbare onderdelen zichtbaar ( kijk bv als je enerzijds op "Kweekdieren" klikt, en anderzijds op "Educatie", waarbij dan op de tweede lijn telkens verschillende knoppen verschijnen met verschillende keuzemogelijkheden ), maar ook, dat ik dan verder op hetzelfde blad/screen bij een langere inhoud kan scrollen naar beneden, zonder dat het menu bovenaan verdwijnt? Dat menu moet namelijk zichtbaar blijven om terug te kunnen gaan of een ander onderdeel te kunnen kiezen...
Met frames was dat dus kennelijk mogelijk, maar hoe imiteert men dat met een systeem "zonder frames", maar misschien met PHP of een javasccript of wat anders?....
Greetz
Jive1
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan