welke opzet website zonder frames

Pagina: 1
Acties:
  • 271 views sinds 30-01-2008
  • Reageer

  • MerijnB
  • Registratie: Oktober 2000
  • Laatst online: 21:19
ik heb een jaar ofzo geleden een website gemaakt voor vrienen die iets in Thailand doen. Nou ben ik absoluut geen webontwikkelaar dus met mijn gebrekkige html kennis is dat nogal brak geworden. Ik ben nu aan het inlezen op semantiek ed en wil een poging doen de site opnieuw op te bouwen. dit: http://gathering.tweakers.net/forum/list_messages/1144703 is bijv een topic hier op GoT waar ik een hoop interessante dingen zie staan, maar ik heb net geen overzicht over hoe dit aan te pakken.

Dingen die ik wil bereiken zijn oa (uit bovenstaand draadje):

1 Friendly URL's waar mogelijk (/aboutus in plaats van content.php?id=2)
2 Niet start pagina beginnen met taal keuze (gewoon aan de hand van IP land bepalen en dan duidelijk zichtbaar de mogelijkheid tot taalveranderen, voorkeur met flaggetjes zodat je geen text hoeft te gebruiken).

D'r zijn ook nog wat 'hobbels' die genomen moeten worden:

a) Ik heb alleen het frame verzorgt en niet de content. Diegene die de content verzorgt heeft niet zoveel verstand van html en die kan nu heel eenvoudig per pagina een volledig html doc maken (incl <head/> en <body/>) en die wordt netjes in het middelste frame geladen.

b) Diegene die de content verzorgt kan er met die pagina's ook voor zorgen dat er content in de andere frames wordt veranderd. Dit gaat dmv een meta tag die diegene in de pagina kan zetten, in de OnLoad wordt er dan een java scriptje gestart die adhv die meta tags evt. andere frames gaat updaten.

Al het dynamische werk heb ik nu in php gedaan, om het mezelf niet nog moeilijker te maken wil ik dit als het even kan nog maar even zo houden :)

Ik zie zelf 3 mogelijkheden om dit aan te pakken, waarbij de frames de deur uitgaan en alles dus in divs komt te staan:

- een (evt statische) pagina maken met de layout divs, daar dan mbv een ajax achtig iets de content voor het 'middelste frame' mee ophalen en in de div (innerhtml denk ik?) zetten. Nadeel is dan dat ik aan de client kant de html die ik met ajax binnen krijg omdat ik in die div natuurlijk geen complete html incl. html en body tag kan zetten. Ik weet niet of puntje 1 dan mogelijk is.

- een dynamische pagina maken die telkens opnieuw geladen wordt en waarbij ik dus met argumenten de goede content genereer. Dit zal dan met een Include() ofzo moeten, waarbij ik dan server side de html moet gaan parseren zodat ik alleen wat tussen de body tags staat include (ik zou dan denken met een regular expressie oid).

- voor alle verschillende content in het 'middelste frame' een aparte php maken. In dit geval is puntje 1 makkelijk, aan de andere kant voelt dit natuurlijk nogal dom aan omdat je dan een heleboel dubbel hebt, aangezien niet alle content per pagina verschilt (headers, footers, navigatie, etc).

Los van dit heb ik dan nog helemaal geen idee hoe ik puntje 2 netjes voor elkaar kan krijgen, maar ik heb het idee dat dat een beetje los van de rest staat en ook achteraf kan.

pfff wat een lap tekst. Ik hoop dat het een beetje duidelijk is en iemand me een schopje in de goede richting kan geven of kan vertellen welke briljante oplossing ik mis :)

A software developer is someone who looks both left and right when crossing a one-way street.


Verwijderd

Ik heb niet je hele post gelezen, maar op 1 punt kan ik je in ieder geval wel een tip geven. Gebruik niet het IP adres om de taal uit te zoeken (is bewerkelijk, en in het geval van meertalige landen/anderstaligen vrij nutteloos), gebruik de locale setting. Die wordt bij de meeste browsers meegegeven als de HTTP header 'HTTP_ACCEPT_LANGUAGE'. Google op die header en je zal waarschijnlijk genoeg informatie kunnen vinden.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
MerijnB schreef op woensdag 09 augustus 2006 @ 23:12:
- een (evt statische) pagina maken met de layout divs, daar dan mbv een ajax achtig iets de content voor het 'middelste frame' mee ophalen en in de div (innerhtml denk ik?) zetten. Nadeel is dan dat ik aan de client kant de html die ik met ajax binnen krijg omdat ik in die div natuurlijk geen complete html incl. html en body tag kan zetten. Ik weet niet of puntje 1 dan mogelijk is.
Wooo... Woooo.. Wooooooow cowboy. Steady...
Rustig joh. Frames vervangen door divs 8)7 En daar dan wat ajax in smijten? Waarom dat? Omdat het "hip" is? Waarom zou je AJAX gebruiken?
Dat je van frames af wil kan ik me iets bij voorstellen. En dat je Friendly URLs wil, ok. Maar wat je hier "uitkraamt" :? Beats me. Het klinkt mij in de oren dat je vanalles wat hebt gelezen en maar gewoon de "popi jopi kudde" wil volgen. In that case heb ik hier nog een buzzword voor je (doet 't altijd goed bij projectmanagers en op feestjes (vooral bij de chicks :P )): XML <Crowd goes "ooooooh and aaaaah">.
Alle gekheid op een stokje: Je moet geen techniek gebruiken omdat "iedereen" het doet, maar omdat je 't nodig hebt. Waarom een hamer gebruiken als je een plank wil zagen? Wat je hier tentoon spreidt is in elk geval dat je nog niet helemaal weet wanneer je welk "gereedschap" moet gebruiken. Daar is niets mis mee, maar verdiep je daar dus nog even in.
MerijnB schreef op woensdag 09 augustus 2006 @ 23:12:
- een dynamische pagina maken die telkens opnieuw geladen wordt en waarbij ik dus met argumenten de goede content genereer. Dit zal dan met een Include() ofzo moeten, waarbij ik dan server side de html moet gaan parseren zodat ik alleen wat tussen de body tags staat include (ik zou dan denken met een regular expressie oid).
Dus je hebt wel al PHP geschreven maar wat je nu omschrijft snap je niet? En wat bedoel je met includes? Misschien bedoel je een database?
MerijnB schreef op woensdag 09 augustus 2006 @ 23:12:
- voor alle verschillende content in het 'middelste frame' een aparte php maken. In dit geval is puntje 1 makkelijk, aan de andere kant voelt dit natuurlijk nogal dom aan omdat je dan een heleboel dubbel hebt, aangezien niet alle content per pagina verschilt (headers, footers, navigatie, etc).

Los van dit heb ik dan nog helemaal geen idee hoe ik puntje 2 netjes voor elkaar kan krijgen, maar ik heb het idee dat dat een beetje los van de rest staat en ook achteraf kan.

pfff wat een lap tekst. Ik hoop dat het een beetje duidelijk is en iemand me een schopje in de goede richting kan geven of kan vertellen welke briljante oplossing ik mis :)
Om eerlijk te zijn: ik kan er geen touw aan vastknopen. Een aparte PHP voor elke content? Het idee achter PHP is toch juist dat je de content dynamisch genereert (m.b.v. een database of andere bronnen waar je je content in opslaat <xml files :P >)

Verder ben ik het eens met wat HerrFlick zegt. Ook "vlaggetjes" gebruiken is geen goed idee, want een vlag representeert een land en geen taal. Wat dacht je van bijvoorbeeld België (vlaams en frans) of Zwitserland? Gebruik gewoon een tekstuele link voor de taalselectie.

Wellicht dat een "standaard" CMS (zoals Joomla, Wordpress, noem-er-maar-1) een makkelijkere oplossing voor je is, dan is het code gedeelte al gedaan en kun je je meer richten op de content.

Disclaimer: Ik heb mijn uitspraken dus gebaseerd op dit zinnetje:
MerijnB schreef op woensdag 09 augustus 2006 @ 23:12:
Nou ben ik absoluut geen webontwikkelaar dus met mijn gebrekkige html kennis is dat nogal brak geworden.
Ik bedoel het dus niet verkeerd, maar heb de indruk dat je teveel ineens wil...

[ Voor 18% gewijzigd door RobIII op 09-08-2006 23:50 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • bgrr
  • Registratie: Oktober 2001
  • Niet online
Wat zijn je argumenten om de frames kwijt te raken?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • bgrr
  • Registratie: Oktober 2001
  • Niet online
i know but does the ts know of roept ie alleen maar geen frames omdat iedere devver roept dat frames not done is ?

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Om eerlijk te zijn, als je zelf spreekt van een beperkte HTML kennis, dan gooi je wel met heel moeilijke worden, user friendly urls, dynamische webpaginas, daarmee moet ik niet afkomen bij mn kameraad, die een HTML cursus heeft gevolgd, de dingen die jij vraagt zijn Apache mod rewrite, en PHP. Niet zo simpel!

Javascript meta tags aanpassen, volgens mij gaat dat nog niet eens ( heeft het zin ? )

Going for adventure, lots of sun and a convertible! | GMT-8


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
snake903 schreef op woensdag 09 augustus 2006 @ 23:58:
Javascript meta tags aanpassen, volgens mij gaat dat nog niet eens ( heeft het zin ? )
Behalve dat 't pretty useless is, kun je via het DOM best meta tags aanpassen hoor?
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Meta test</title>
    <meta name="somemeta" content="somevalue"> 

    <script type="text/javascript">
        function foo() {
            var bar = document.getElementsByTagName('meta')[0]; 

            //show what meta we got hold of...
            alert(bar.name);
            alert(bar.content);

            //modify content and show changes...
            bar.content = 'foo';
            alert(bar.content);
            
        }
        
        document.onload = foo();
    </script>
</head>

<body>
    <p>Javascript meta modify test</p>
</body>
</html>

[ Voor 42% gewijzigd door RobIII op 10-08-2006 00:09 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • moozzuzz
  • Registratie: Januari 2005
  • Niet online
Met PHP (en andere scriptingtaling) kan je makkelijk oplossing 2 maken en ik zou die dan ook naar voor schuiven. Dat is een oplossing voor de verschillende pagina's van je site.

Voor het scripting gedeelte ivm de frames/divs/whatever kan je de huidige site mss es tonen, zodat we het beter kunnen inschatten wat je wilt.

[ Voor 56% gewijzigd door moozzuzz op 10-08-2006 13:19 ]


  • marko77
  • Registratie: Februari 2002
  • Laatst online: 06-05-2025
ik zou doen wat roblll zegt, joomla oid installeren, daarmee heb je al een hoop dingen getackled :)

Als je zelf net komt kijken bij webdesign neem je wel wat veel hooi op je vork als je het allemaal vanaf scratch wilt gaan doen imo

Mijn rig


  • MerijnB
  • Registratie: Oktober 2000
  • Laatst online: 21:19
lekker, zoveel reacties, tx all :)

@HerrFlick
tx, ga ik ff induiken

@Roblll
hehe, ik ben niet zo'n hype meeloper :)
De rede dat ik aan ajax dacht is omdat het een zelfde soort techniek is als ik nu gebruik. Daarmee bedoel ik dat ik nu met frames steeds een frame update, en met ajax een div zou kunnen updaten.
(en om xml nu nog een buzz woord te noemen :p)

Met includes bedoel ik dat je vanuit php simpel weg een hele andere .html include, probleem is dan natuurlijk dat je wat met de html en body tags moet doen.

Over de talen had misschien d'r even bij moeten vermelden dat het alleen om engels/nederlands gaat, en dat dat voorlopig nog wel ff zo blijft :X neemt niet weg dat textuele link ook kan, maar dat maakt voor de aanpak natuurlijk niets uit.

Standaard CMS heb ik aan gedacht, maar ik hoop dat ik voor degene die de content verzorgt het allemaal beetje hetzelfde kan houden, dat werkt nu nl best goed.

disclaimer: misschien had ik het beter outdated html kennis kunnen noemen. Ik ga hier denk wel uitkomen, wil alleen niet aan het eind van de rit erachter komen dat ik veel beter anders had kunnen beginnnen.

@bgrr
Ik geef toe dat anti-frames wel beetje een hype lijkt op het moment en dat ik wil er ook beetje van proefen. Motivatie zijn voornamelijk: betere indeexbaarheid google, kleinere (dus snellere) html en dus minder serverload, (als het goed is) beter cross-browser.

@snake903
Ik geef toe, user friendly urls heb echt even geen idee van hoe dat zou moeten. Als dat idd in de http server zelf zal moeten is dat niet mogelijk, ik denk niet dat m'n huidige hoster mij toestaat even z'n draaiende ISS aan te passen :)
Over php, dat doe ik al een tijdje. ik heb het idee dat er (door mijn eigen schuld) misschien iets _te_ laagdenkend over wat ik kan wordt gedaan. Btw heb ik nergens gezegd dat ik met javascripts meta tags aanpas, alleen dat ik ze uitlees en op die manier meerdere frames tegelijk update.

@moozzuzz
Ik denk zelf ook dat optie 2 het meest logisch en zinvol is.
1 voelt niet goed, zeker omdat je denk ik niet wil dat je clientside code heb zitten die zich met content bezig gaat houden.
3 is eigenlijk te dom voor woorden. De enige rede dat dit me te binnen schoot is omdat ik geen idee heb hoe dat met user friendly url's zit (als iemand me hier een pointer voor kan geven).
over 2: zie onder

De site waar het over gaat is www.zcct.com

@marko77/all
ik zit denk ik niet zo te wachten op een CMS en degene die nu content maakt al helemaal niet.

bottomline:
Hoe langer ik erover nadenk hoe meer ik het idee heb dat het enige probleem wat ik zelf niet kan overzien eigenlijk is dat ik punt A en B niet kwijtwil. Dit betekend 2 problemen:
1. Ik krijg de content in onafhankelijke html pagina's
2. In die pagina wordt nu mbv metatags content van andere frames ook veranderd.

Deze beide punten zijn volgens mij (redelijk eenvoudig) op te lossen door serverside de huidige content pagina te parseren, en daar dan de content tussen de body tags, en de content van de betreffende meta tags uit te lezen. Aan de hand daarvan kan ik dan ook de content van de andere frames genereren. Niet zo moeilijk denk ik, maar toch heb ik het gevoel dat dat nou niet de manier is?

A software developer is someone who looks both left and right when crossing a one-way street.


  • Mithrandir
  • Registratie: Januari 2001
  • Laatst online: 15-02 13:09
Ik denk eerlijk gezegd dat je zelf bang bent voor een CMS, terwijl dat zeker weten de beste oplossing voor je probleem is.

Frames worden niet afgeraden omdat et frames zijn. Het gaat er om dat je minder goed kunt bookmarken. De 'workaround' die je wilt gaan gebruiken met Ajax is totaal onzinnig; je houdt de zelfde nadelen en maakt het bookmarkprobleem alleen nog maar erger.

Frames niet cross-browser? Onzin. Met Ajax is dat veel erger. Frames zijn een van de weinige dingen in HTML die redelijk constant werken in verschillende browsers.

Ik zou echt gaan kijken naar een fatsoenlijk CMS en niet jezelf honderden uren werk laten doen om een matige oplossing zelf te gaan programmeren.

Verbouwing


  • MerijnB
  • Registratie: Oktober 2000
  • Laatst online: 21:19
zoals ik in m'n laatste post al aangeef denk ik ook dat frames ajax geen optie is. Daarbij, als ik naar een CMS ga schuif ik mijn 'probleem' (zover het nu een probleem genoemt kan worden) naar diegene die nu de content maakt en dat probeer ik nu juist te vermijden.

edit:
typo

[ Voor 5% gewijzigd door MerijnB op 11-08-2006 10:46 ]

A software developer is someone who looks both left and right when crossing a one-way street.


  • Boelie-Boelie
  • Registratie: November 2004
  • Laatst online: 26-09-2020
Je wekt bij mij de indruk dat je een CMS moeilijk doen vindt, klopt dat? Probeer eens op www.opensourcecms.com een online demo van wat simpele cms'jes, een erg simpele is Wordpress. Goede documentatie, supportforum.. Om het nog simpeler te maken, kun je voor de contentprovider z'n permissies aanpassen, waardoor alleen de opties zichtbaar zijn om nieuws of een pagina in te voeren/te bewerken. Om content in te voeren is kennis van e-mail genoeg.. Neem aan dat dat niet teveel gevraagd is...

[ Voor 3% gewijzigd door Boelie-Boelie op 11-08-2006 13:20 ]

Cogito ergo dubito


  • Mithrandir
  • Registratie: Januari 2001
  • Laatst online: 15-02 13:09
MerijnB > ik snap nog steeds niet wat je probleem is met een CMS. Je krijgt je paginas in HTML aangeleverd. So what? Dat kan nog steeds verwerkt worden in een CMS hoor. Je krijgt zelfs nog veel meer terug met een CMS:

1. als je de (ongetwijfeld meegeleverde) WYSIWYG editor gebruikt krijg je schonere HTML. Ook is het moeilijker om veel irritante kleurtjes, 100 verschillende lettertypes enzovoorts op de website te zetten. Het lijkt een nadeel, maar is een voordeel. Uniforme layout is belangrijk op een website.
2. Je hebt makkelijk een overzicht van alle paginas en je kunt oude paginas makkelijk aanpassen.

Ik snap je hele probleem met CMS-en niet. Je maakt een probleem van iets wat dat totaal niet is. Kun je, als je er echt een probleem mee hebt, omschrijven wat dat probleem precies is?

Verbouwing


  • nero355
  • Registratie: Februari 2002
  • Laatst online: 20:32

nero355

ph34r my [WCG] Cows :P

Verwijderd schreef op woensdag 09 augustus 2006 @ 23:36:
Ik heb niet je hele post gelezen, maar op 1 punt kan ik je in ieder geval wel een tip geven. Gebruik niet het IP adres om de taal uit te zoeken (is bewerkelijk, en in het geval van meertalige landen/anderstaligen vrij nutteloos), gebruik de locale setting. Die wordt bij de meeste browsers meegegeven als de HTTP header 'HTTP_ACCEPT_LANGUAGE'. Google op die header en je zal waarschijnlijk genoeg informatie kunnen vinden.
Hey doe is niet :)

Als ik iets haat is het wel websites die automatisch de taal voor me kiezen :/ Gewoon de bezoeker laten kiezen !!

|| Stem op mooiere Topic Search linkjes! :) " || Pi-Hole : Geen advertenties meer voor je hele netwerk! >:) ||


  • moozzuzz
  • Registratie: Januari 2005
  • Niet online
Er van uit gaande dat de huidige content moet komen in de nieuwe, zou ik of (zoals al aangeraden) een CMS gebruiken, ofwel de include-versie.

De zin van je gebruiker html-files te laten uploaden ontgaat me even. De mensen in kwestie kunnen dan evengoed enkel de body-gegevens uploaden lijkt me? Je hoeft trouwens niet persé een .html te includen hé. Ik doe het vb met een klein functie'je dat de body-content uit een txt-file uitprint.

Het eenvoudigst (want verzonnen door mezelf; kan dus niet moeilijk zijn) is php-files includen aan de hand van parameters in de url. Voordeel hiervan is dat
- PHP-files dynamische content kunnen tevoorschijntoveren
- PHP-files in extremis geen dynamische content hoeven te bevatten
- je één PHP-file kan brouwen die statische content op je pagina's tevoorschijn tovert (zo doe k het)

[ Voor 0% gewijzigd door moozzuzz op 11-08-2006 17:11 . Reden: \edit uit gewoonte grtzz gezet... en weer verwijderd ]


  • MerijnB
  • Registratie: Oktober 2000
  • Laatst online: 21:19
feitelijk is wat jij voorsteld hetzelfde als ik bij mijn 'bottomline' heb neergezet, als ik het goed volg.
Jij gaat dus ook vanuit je php een html file openen, dan vervolgens alles wat er tussen de body tags staat uitpeuteren en dat in je output zetten?

A software developer is someone who looks both left and right when crossing a one-way street.


Verwijderd

nero355 schreef op vrijdag 11 augustus 2006 @ 15:00:

Hey doe is niet :)

Als ik iets haat is het wel websites die automatisch de taal voor me kiezen :/ Gewoon de bezoeker laten kiezen !!
Dat heb je toch al gedaan door de taal in je browser te kiezen :z

Uiteraard moet je nog wel kunnen switchen als de bezoeker eenmal een andere keuze maakt. Maar de eerst opgevraagde pagina in de taal van de browserinstelling geven lijkt me bijzonder correct.

  • lullebakman
  • Registratie: Januari 2005
  • Laatst online: 15-02 08:40
Ik zou gewoon een 'klein' CMSje bouwen:
- Jouw 'makkers' loggen zich in.
- Ze zien een lijst van pagina's
- Ze klikken 1 aan (mss keuze tussen de NL en EN versie)
- De inhoud van die pagina komt gewoon in een <textarea> te staan
- Voor de rest maak je ook de overige CRUD-poespas (Create Read Update Delete), want je kan toch al php.
- Je slaat het op in een formaat naar keuze (MySQL, txt, html?, XML >:) )
- Je include gewoon de gepaste pagine met includes in de middenste div.

+ Je gebruikt mod_rewrite voor mooie urls.

  • Mithrandir
  • Registratie: Januari 2001
  • Laatst online: 15-02 13:09
moozzuzz schreef op vrijdag 11 augustus 2006 @ 17:10:
Er van uit gaande dat de huidige content moet komen in de nieuwe, zou ik of (zoals al aangeraden) een CMS gebruiken, ofwel de include-versie.

De zin van je gebruiker html-files te laten uploaden ontgaat me even. De mensen in kwestie kunnen dan evengoed enkel de body-gegevens uploaden lijkt me? Je hoeft trouwens niet persé een .html te includen hé. Ik doe het vb met een klein functie'je dat de body-content uit een txt-file uitprint.

Het eenvoudigst (want verzonnen door mezelf; kan dus niet moeilijk zijn) is php-files includen aan de hand van parameters in de url. Voordeel hiervan is dat
- PHP-files dynamische content kunnen tevoorschijntoveren
- PHP-files in extremis geen dynamische content hoeven te bevatten
- je één PHP-file kan brouwen die statische content op je pagina's tevoorschijn tovert (zo doe k het)
ik hoop voor je dat je dit wel allemaal hebt dichtgetimmert? Je wilt niet dat alle gebruikers alle files op je website zomaar kunnen includen... Wat zou er gebeuren als hij '../.htaccess' zou kiezen als naam?

Pas dus goed op dat je niet zomaar dingen include zonder enige vorm van controle...

Verbouwing


  • StarLite
  • Registratie: Januari 2000
  • Laatst online: 01-12-2025

StarLite

'ON ERROR RESUME NEXT

Mithrandir schreef op zaterdag 12 augustus 2006 @ 09:20:
[...]


ik hoop voor je dat je dit wel allemaal hebt dichtgetimmert? Je wilt niet dat alle gebruikers alle files op je website zomaar kunnen includen... Wat zou er gebeuren als hij '../.htaccess' zou kiezen als naam?

Pas dus goed op dat je niet zomaar dingen include zonder enige vorm van controle...
of nog leuker index.php?page=http://www.mijnwebsite.nl/evilscript.php :P

Maar zoals al vaker is gezegt, waarom geen simpel gratis CMS?

tyrips, tywreps, tiewreps, tiereps, tie raps, ripties, taiwraps, kabelbindbandjes » Tie Wraps
\o/

Pagina: 1