[PHP] Veiligheidsprobleem bij PHP-templates?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
Ik ben bezig met een CMS'je en ben op het punt aanbeland waarop ik templates wil implementeren. Met andere woorden: in het CMS zet ik een textarea waarin de template bestanden worden geopend. De gebruiker dan deze aanpassen en weer bewaren.

Persoonlijk vind ik het altijd wat onzin om een aparte template class te implementeren, omdat PHP zelf een uitstekende templating engine is. Het enige argument wat ik hoor voor een aparte template laag is dat het gebruiksvriendelijk is voor de designer (waarvan wordt aangenomen dat die enige simpele PHP niet onder de knie kan of wil krijgen). Ik zie alleen het verschil niet tussen:

PHP:
1
2
3
4
5
6
<table>
  <tr>
    <td><?= $linker_navigatie; ?></td>
    <td><?= $artikel; ?></td>
  </tr>
</table>

en
HTML:
1
2
3
4
5
6
<table>
  <tr>
    <td>{linker_navigatie}</td>
    <td>{artikel}</td>
  </tr>
</table>

Dus aangenomen dat het leren van wat eenvoudige PHP geen probleem is, wat is dan het grote voordeel van een extra template class, die alle {tags} gaat str_replace({artikel}, $artikel)' en?

Een belangrijk argument lijkt mij wel dat als je PHP toelaat in je templates, gebruikers PHP code kunnen toevoegen waar niemand op zit te wachten, terwijl men bij {deze vorm} gebonden is aan de {tags} die gedefinieerd zijn en geen eigen functies kan bouwen en toevoegen.

Is dat een valide argument? Wat zijn andere voor / nadelen van deze beide methoden?

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:28
De code uit bijvoorbeeld een database wordt nooit uitgevoerd door PHP als je geen eval gebruikt. Geen probleem dus. Er vanuit gaande dat "users" geen "template-devvers" zijn.

[ Voor 21% gewijzigd door djluc op 16-06-2004 18:38 ]


Acties:
  • 0 Henk 'm!

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
@djluc -- de templates worden niet opgeslagen in een database, maar als fysieke bestanden op de server, in een mapje "templates" ofzo.

Zoals ik het me voorstel gaat het systeem als volgt werken:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php

/* een hele hoop meuk, zoals het uit de database trekken van de navigatie */

$nav_left = '<een hele hoop html>';

/* nog meer meuk, zoals het article_id uit de querystring uitlezen, 
en de juiste  info uit de database trekken */

$query = "SELECT titel, tekst FROM articles WHERE article_id = ".$_GET["article_id"];
...
$body = "<html met daarin het artikel>";

/* Stuur alles naar de template: */

include_once($template_dir."template.php");


template.php:
code:
1
2
3
4
5
6
<table> 
  <tr> 
    <td><?= $left_nav; ?></td> 
    <td><?= $body; ?></td> 
  </tr> 
</table>

^^ deze is via een pagina in het CMS te editten. Iemand zou dus aan deze template file kunnen toevoegen:
PHP:
1
2
3
4
5
6
7
8
<table> 
  <tr> 
    <td><?= $linker_navigatie; ?></td> 
    <td><?= $artikel; ?></td> 
  </tr> 
</table>

<?php echo "hello world!"; ?>  <------------

Dat is tamelijk onschuldig, maar wie weet wat voor rare dingen mensen aan die template file gaan toevoegen. Dat is wat ik bedoelde. Meningen graag?

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
Tsja, de code staat aan het eind zo te zien, dus de pagina is al gerenderd.

Je zou eventueel vantevoren nog ff een regexp over je template kunnen halen die alles eruit flikkert wat niet !<\?= $\w[a-z0-9_]; \?>!i matched. Wat voor dingen denk je dan dat er kunnen gebeuren? De pagina is al geparsed, dus daar kan niets meer aan veranderd worden.

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:28
Waarom mag een user templates editten? Je kunt toch gewoon alleen het artikel in de database zetten en de templates in eigen beheer houden?

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Lijkt me inderdaad dat de personenen die de templates gaan editen wel te vertrouwen moeten zijn. Waarom zouden ze vreemde dingen er aan toevoegen? Dan zou het probleem dus niet bij de mensen liggen die de site bezoeken, maar bij de mensen die de site bewerken/maken. Vind ik een beetje een vreemde stelling.

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • slm
  • Registratie: Januari 2003
  • Laatst online: 12-11-2023

slm

De vraag is eigenlijk hoe erg je het vind als de betreffende templates niet meer werken.

Bij een php-template is er een erg hoog risico dat het óf misbruikt wordt, óf verne*kt wordt waardoor opeens de hele template niet meer functioneert.

Waarom zou de template trouwens een php (of ander scripting) bestand moeten zijn en niet gewoon een txt bestand waar je via regexp's de vars wijzigt? Gebruikers of pure designers PHP bestanden laten wijzigen is altijd af te raden. Voor je het weet werkt het systeem niet meer, je kan het maar moeilijk afvangen/beveiligen en afhankelijk van de bedrijfskritischheid van de app zou dit wel eens nare gevolgen kunnen hebben.

Deze problemen heb je bij txt-templates niet. En als je die wel hebt dan heb je het niet goed inelkaar gezet :)

To study and not think is a waste. To think and not study is dangerous.


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:27

.oisyn

Moderator Devschuur®

Demotivational Speaker

Dit is trouwens pas nog uitvoerig besproken in [rml][ php] vraagje voor gebruik templates[/rml]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

Yup.. en wat je nu noemt is ook de belangrijkste reden om WEL een losse template engine te gebruiken.

Namelijk als je je templates wilt beperken qua mogelijkheden.

Als je echter intern werkt moet dat niks uit maken. Pas als je klanten zelf in hun templates wil laten rommelen (en dat lijkt me uberhaupt ongewenst :P).

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Is niet een ander belangrijk voordeel van templates dat je gebruikers zelf een layout zou kunnen laten kiezen? Bijvoorbeeld hier op GoT, daar kun je toch ook een ander template kiezen als je abonnee bent? Ik vind dat zelf ook wel en belangrijke reden om losse templates te gebruiken. Ik kan me in ieder geval niet voorstellen dat er voor elk template een aparte PHP file gemaakt wordt, lijkt mij nogal omslachtig. Gewoon HTML en alle benodigde waarden veranderen. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Dit is dus een punt dat RwDwR ook aanhaalde in die vorige discussie, en ik denk dat het gewoon een kwalijke zaak is dat je php templates gebruikt om door je uiteindelijke klant te laten aanpassen juist omdat hij er dan in gaat lopen rommelen. Heb je zelf je best gedaan template en logic te scheiden, heb je een half jaar later een website waar je zelf door de bomen het bos niet meer ziet (in het ergste geval)

Een klant zal zichzelf niet willen kloten, dus daar hoef je het niet voor te doen, maar dan om onderhoudbaarheid-veiligheid?
offtopic:
Dus dan ontstaat weer de vraag welke template engine makkelijker is voor klanten, en dan moet je kiezen voor iets dat niet op zichzelf weer php is.
Ik weet er wel eentje die vanaf de volgende versie 3 keer sneller is :-)

Acties:
  • 0 Henk 'm!

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 04-09 08:16

OkkE

CSS influencer :+

Het kan een voordeel zijn, dat je via templates de layout kunt aanpassen. Maar in veel gevallen kan je dit ook al bereiken met verschillende CSS files. Zodat je de structuur (HTML) en layout (CSS) compleet gescheiden houdt. :)

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

OkkE schreef op 17 juni 2004 @ 10:15:
Het kan een voordeel zijn, dat je via templates de layout kunt aanpassen. Maar in veel gevallen kan je dit ook al bereiken met verschillende CSS files. Zodat je de structuur (HTML) en layout (CSS) compleet gescheiden houdt. :)
Nou, dat gaat je niet (helemaal) lukken hoor!
Want in HTML zijn data en opmaak zoals je vast wel weet niet volledig gescheiden. XML/XSLT/CSS is wat je nodig hebt om structuur te scheiden van opmaak

edit:
Als onderbouwing geef ik je tabellen waarin je al duidelijk layout zaken aan het regeln bent omdat je Kopjes moet plaatsen en aangeeft hoeveel kolommen er zijn, en welke data er waar in moet komen. Heel erg layout gericht dus

Ander voorbeeld is een <BR /> element. Dit bevat geen gegevens, en het geeft aan dat volgende gegevens op een nieuwe regel beginnen.

Nog een voorbeeld: een <DIV> element wordt standaard vooraf gegeaan door een newline bij weergave. Dit kun je met een CSS misschien tegengaan:? maar het is evengoed weer layout en niet gegevens

En zo kan ik nog wel even door gaan, kortom HTML is geen pure gegevens opslag structuur waarbij je layout helemaal apart kunt regelen

[ Voor 44% gewijzigd door RwD op 17-06-2004 10:46 ]


Acties:
  • 0 Henk 'm!

Verwijderd

RwD schreef op 17 juni 2004 @ 10:39:
[...]
Nou, dat gaat je niet (helemaal) lukken hoor!
Want in HTML zijn data en opmaak zoals je vast wel weet niet volledig gescheiden. XML/XSLT/CSS is wat je nodig hebt om structuur te scheiden van opmaak.
Je moest eens weten wat er allemaal wel gaat lukken als je mensen in huis hebt die wel wat met HTML en CSS kunnen.
Als onderbouwing geef ik je tabellen waarin je al duidelijk layout zaken aan het regeln bent omdat je Kopjes moet plaatsen en aangeeft hoeveel kolommen er zijn, en welke data er waar in moet komen. Heel erg layout gericht dus
Daarom moet je tabellen alleen gebruiken als je data wilt gaan weergeven in rijen en kolommen. Het is niet de bedoeling de complete layout ermee te maken. Daar heb ik de afgelopen jaren iedereen op het forum hier al mee vermoeid, maar veel mensen begrijpen inmiddels wel aardig waar HTML nu eigenlijk voor is.
[quote]Ander voorbeeld is een <BR /> element. Dit bevat geen gegevens, en het geeft aan dat volgende gegevens op een nieuwe regel beginnen.[/qoute]
Ja, en laat dat nou net de bedoelin zijn als je er een neerzet. Regeltje van Cheatah: nooit 2 of meer br's na elkaar gebruiken, want dan ben je suf bezig en had je CSS moeten gebruiken. Je hebt <br /> niet zo vaak nodig, meestal doe je i teksten het meeste met de <p> tags.
Nog een voorbeeld: een <DIV> element wordt standaard vooraf gegeaan door een newline bij weergave. Dit kun je met een CSS misschien tegengaan:? maar het is evengoed weer layout en niet gegevens
Dat kun je met CSS tegengaan ja. En ik vind dat je nu wel aangeeft dat je er niet zoveel vanaf weet. Ga dan ook geen adviezen geven aan anderen.
En zo kan ik nog wel even door gaan, kortom HTML is geen pure gegevens opslag structuur waarbij je layout helemaal apart kunt regelen
Dat klopt. HTML is een manier om gegevens op een standaard manier te markeren en gereed te maken voor presentatie. Met HTML doe je de structuur en geef je betekenis aan afzonderlijke onderdelen. Met CSS maak je de presentatie af.

[ Voor 68% gewijzigd door Verwijderd op 17-06-2004 10:53 ]


Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Verwijderd schreef op 17 juni 2004 @ 10:46:
[...]

Je moest eens weten wat er allemaal wel gaat lukken als je mensen in huis hebt die wel wat met HTML en CSS kunnen.
Dit gaat een beetje offtopic, maar zou je me een voorbeeld kunnen geven?
Want HTML is er toch echt niet voor bedoeld!!

Ik bedoel, tuurlijk kun je de plaatjes en de kleuren, de lettertypes en marges aanpassen, maar daarmee veranderd het uiterlijk alleen maar (een beetje), en is het niet echt een template waarin je ook echte structurele aanpassingen kunt maken.

Je veranderd dus wel de plaatjes en het voorkomen, maar in principe zul je dan tussen de verschillende dingen altijd een structuur kunnen ontdekken.
Neem bijvoorbeeld de eerdere skinable versies van Winamp. Ze zien er wel anders uit, maar de knopjes zaten altijd op dezelfde plaats. Echt aanpasbaar, echt skinbaar was dit niet. En dat is hetzelfde principe met HTML + CSS
Verwijderd schreef op 17 juni 2004 @ 10:46:

[...]

...
Je hebt <br /> niet zo vaak nodig, meestal doe je i teksten het meeste met de <p> tags.
Dat is waar. teksten tussen <p> is beter, maar daar gaat het niet om
[...]

Dat kun je met CSS tegengaan ja. En ik vind dat je nu wel aangeeft dat je er niet zoveel vanaf weet. Ga dan ook geen adviezen geven aan anderen.
En ik vindt dat je dan weer een aanname te veel maakt.
Je kunt onmogelijk weten wat ik van CSS weet, bovendien heb ik nooit dit effect van div op proberen te heffen, of omdat het span element bestaat, of omdat het niet nodig was.
[...]

Dat klopt. HTML is een manier om gegevens op een standaard manier te markeren en gereed te maken voor presentatie. Met HTML doe je de structuur en geef je betekenis aan afzonderlijke onderdelen. Met CSS maak je de presentatie af.
Dat is waar, maar de HTML bouw je met die template engine en daar gaat het om nu eigenlijk....

[ Voor 88% gewijzigd door RwD op 17-06-2004 11:09 ]


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

NMe84 schreef op 17 juni 2004 @ 09:58:
Is niet een ander belangrijk voordeel van templates dat je gebruikers zelf een layout zou kunnen laten kiezen? Bijvoorbeeld hier op GoT, daar kun je toch ook een ander template kiezen als je abonnee bent? Ik vind dat zelf ook wel en belangrijke reden om losse templates te gebruiken. Ik kan me in ieder geval niet voorstellen dat er voor elk template een aparte PHP file gemaakt wordt, lijkt mij nogal omslachtig. Gewoon HTML en alle benodigde waarden veranderen. :)
Komen we weer op precies dezelfde discussie. Dit kan ook allemaal zonder een losse template engine maar met gewoon gebruik van PHP zoals PHP bedoeld is: als template engine.

Kijk even naar het voorbeeld van TS aub... zelfde geldt voor OkkE

Acties:
  • 0 Henk 'm!

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 04-09 08:16

OkkE

CSS influencer :+

RwD schreef op 17 juni 2004 @ 10:48:
[...]
Dit gaat een beetje offtopic, maar zou je me een voorbeeld kunnen geven?
Want HTML is er toch echt niet voor bedoeld!!
http://www.csszengarden.com/ _/-\o_

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Geinige site...
Alleen is de html hier gestructureerd als een XML, en worden er divs gebuikt met absolute posities. Wat niet mijn personlijke voorkeur heeft, maar goed...

Acties:
  • 0 Henk 'm!

Verwijderd

NMe84 schreef op 17 juni 2004 @ 09:58:
Is niet een ander belangrijk voordeel van templates dat je gebruikers zelf een layout zou kunnen laten kiezen? Bijvoorbeeld hier op GoT, daar kun je toch ook een ander template kiezen als je abonnee bent? Ik vind dat zelf ook wel en belangrijke reden om losse templates te gebruiken. Ik kan me in ieder geval niet voorstellen dat er voor elk template een aparte PHP file gemaakt wordt, lijkt mij nogal omslachtig. Gewoon HTML en alle benodigde waarden veranderen. :)
Een bezoeker meedere layoutkeuzes geven voor een website heeft hier niets mee te maken (de bezoeker mag toch niet zijn eigen template maken?).

offtopic:
Ik vind het trouwens raar dat er een mogelijkheid wordt geboden aan bezoekers om verschillende layouts te kiezen. Ik vind dat een website-layout door het bedrijf\webdesigner bepaalt dient te worden en dit dient direct een goede te zijn zodat er niet geswitch hoeft te worden. Je wilt toch je 'statemant' neerzetten op het web met je layout? Waarrom een bezoeker een keuze te geven om deze te wijzigen?
RwD schreef op 17 juni 2004 @ 10:08:
Dit is dus een punt dat ik zelf ook aanhaalde in die vorige discussie, en ik denk dat het gewoon een kwalijke zaak is dat je php tmeplates gebruikt om door je uiteindelijke klant te laten aanpassen juist omdat hij er dan in gaat lopen rommelen. Heb je zelf je best gedaan template en logic te scheiden, heb je een half jaar later een website waar je zelf door de bomen het bos niet meer ziet (in het ergste geval)

Een klant zal zichzelf niet willen kloten, dus daar hoef je het niet voor te doen, maar dan om onderhoudbaarheid-veiligheid?
Maar ik zie echt niet in waarom een klant de layout wil aanpassen! Dit is toch de taak van de webdesigner\webdeveloper! Een klant wilt dit niet aanpassen: als hij zijn site wil redesignen, dan neemt contact op met de webdesigner\webdeveloper.

Alleen bij bedrijven met een CSM, waarvan de templates in beheer liggen bij de ICT-afdelingen, kan ik mij dit voorstellen. Echter een ICT-afdeling vertrouw ik hier op zich genoeg in... en zoiezo zou ik design-aanpassingen allemaal via CSS doen (zoals al is opgemerkt), dus geen gerommel met templates.
RwD schreef op 17 juni 2004 @ 11:30:
Alleen is de html hier gestructureerd als een XML, en worden er divs gebuikt met absolute posities. Wat niet mijn personlijke voorkeur heeft, maar goed...
HTML als XML? Zo hoort (X)HTML te zijn! Er worden geen divs gebruikt met absolute posities! Ja, er worden divs gebruikt, maar of het absolute is wordt in de CSS geregeld! Dat is de kracht van de Post... ehhh CSS ;)

-Rémy

[ Voor 10% gewijzigd door Verwijderd op 17-06-2004 12:02 ]


Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Verwijderd schreef op 17 juni 2004 @ 11:56:
[...]

Een bezoeker meedere layoutkeuzes geven voor een website heeft hier niets mee te maken (de bezoeker mag toch niet zijn eigen template maken?).

offtopic:
Ik vind het trouwens raar dat er een mogelijkheid wordt geboden aan bezoekers om verschillende layouts te kiezen. Ik vind dat een website-layout door het bedrijf\webdesigner bepaalt dient te worden en dit dient direct een goede te zijn zodat er niet geswitch hoeft te worden. Je wilt toch je 'statemant' neerzetten op het web met je layout? Waarrom een bezoeker een keuze te geven om deze te wijzigen?
Fora bieden vaak die mogelijkheid, en bij sommige fora zels user custom templates... Dan kun je zelf uitmaken hoe je je forum uit wilt hebben zien afgezien van de designer
[...]
Maar ik zie echt niet in waarom een klant de layout wil aanpassen! Dit is toch de taak van de webdesigner\webdeveloper! Een klant wilt dit niet aanpassen: als hij zijn site wil redesignen, dan neemt contact op met de webdesigner\webdeveloper.

Alleen bij bedrijven met een CSM, waarvan de templates in beheer liggen bij de ICT-afdelingen, kan ik mij dit voorstellen. Echter een ICT-afdeling vertrouw ik hier op zich genoeg in... en zoiezo zou ik design-aanpassingen allemaal via CSS doen (zoals al is opgemerkt), dus geen gerommel met templates.
Een klant kan de webiste toch in eigen beheer nemen voor de minder veeleisende zaken??
[...]

HTML als XML? Zo hoort (X)HTML te zijn! Er worden geen divs gebruikt met absolute posities! Ja, er worden divs gebruikt, maar of het absolute is wordt in de CSS geregeld! Dat is de kracht van de Post... ehhh CSS ;)

-Rémy
Ja ok, das waar. Ik vindt "left: 136px;" trouwens redelijk absoluut en ik had het over die site, en over die css-en waar ik ook niet overal "position : relative" zie staan...

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:28
Fora bieden vaak die mogelijkheid, en bij sommige fora zels user custom templates... Dan kun je zelf uitmaken hoe je je forum uit wilt hebben zien afgezien van de designer
In real-life kies je vaak uit enkele standaard door webdevvers bedachte templates...

Acties:
  • 0 Henk 'm!

  • Eärendil
  • Registratie: Februari 2002
  • Laatst online: 22:34
[ontopic]
Je zou een tussenvorm tussen een PHP-templates en een aparte class kunnen maken:
  • De template-devver bewerkt *.tpl-files, hier bedenk je een leuke syntax voor.
  • Als er iets aan deze templates veranderd wordt 'compile' je dit naar PHP:
    • Alle PHP-tags ('<?', '<?=', etc.) uit de tpl strippen
    • Template-code (bijv. {var}) vervangen door PHP (bijv. <?= $var ?>)
  • In je CMS gebruik je alleen de PHP-versie
Op deze manier heb je de snelheid van PHP, maar is het iets veiliger.

Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
Eärendil schreef op 17 juni 2004 @ 17:14:
[ontopic]
Je zou een tussenvorm tussen een PHP-templates en een aparte class kunnen maken:
  • De template-devver bewerkt *.tpl-files, hier bedenk je een leuke syntax voor.
  • Als er iets aan deze templates veranderd wordt 'compile' je dit naar PHP:
    • Alle PHP-tags ('<?', '<?=', etc.) uit de tpl strippen
    • Template-code (bijv. {var}) vervangen door PHP (bijv. <?= $var ?>)
  • In je CMS gebruik je alleen de PHP-versie
Op deze manier heb je de snelheid van PHP, maar is het iets veiliger.
Klinkt als... Smarty!

Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Moet zeggen dat ik een paar woorden terug moet nemen :P

Ben ff het css/div principe aan het gebruiken op een eenvoudige site die ik eind deze maand af moet hebben...

Op deze manier heb ik tot nu toe op het lettertype en de standaardi ingestelde marges na geen verschil kunnen vinden in de weergave door IE, NS7.1 en FF.
Das in dit specifieke geval waar nu aAan werk wel handig, want alhoewel ik de combinatie divs + css nog nooit op deze manier gebruikt had gaat het process toch sneller omdat ik geen kleine zaakjes recht hoef te trekken tussen de browsers (tot nu toe)

maw, werkt best fijn tot nu toe.
Als alles af is ga ik eens schuiven met de css, om te kijken of de site er veel plastischer van geworden is 8)

Tot nu toe kan ik de TS ook aanraden dit systeem te bekijken. Ik zal het niet supervaak toe gaan passen, ik zat nu alleen met een projectje waar het toevallig wel erg handig leek en bleek

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:27

.oisyn

Moderator Devschuur®

Demotivational Speaker

Ik vind dergelijk gebruik van css files eerlijk gezegd een ramp. De huidige opzet CSS files is totaal niet handig om iets een compleet andere look te geven. Ze zijn natuurlijk wel handig om een eenduidig design te geven aan je hele site zonder dat je steeds overal style attributes aan je html elementen toe te voegen, maar je hele design css-customizable maken is monnikenwerk. CSS mist variabelen, expressies en manieren om dingen adhv elkaar uit te lijnen. Een kleurschema aanpassen is natuurlijk wel makkelijker als je de kleuren volledig in een CSS file hebt gespecificeerd, maar je zult dezelfde kleur wel op 100 verschillende plekken in de CSS file aan moeten passen. Ook als je met absolute posities gaat werken; als je iets aanpast dan moet dat op heel veel verschillende plekken gebeuren. Het enige voordeel van CSS tov styles in html is dan dat het allemaal in dezelfde file staat. Als je nou gewoon variabelen aan kon maken, dan definieer je je verschillende kleuren bovenaan de CSS file eenmalig, en gebruik je in de rest van de file gewoon die variabelen. En als je nou gewoon kon zeggen: "deze div moet op dezelfde hoogte als die andere div, maar dan 100 pixels naar rechts", dan kun je tenminste ook nog eens een onderhoudbare layout opzetten ipv alles absoluut te positioneren. En buiten dat, je bent ook nog geheel afhankelijk van hoe de html opgebouwd is

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

100% Mee eens.
Maar voor het project dat ik nu doe is het weer wel handig :Y)

[ Voor 91% gewijzigd door RwD op 18-06-2004 15:51 ]


Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:28
Ik ben op dit moment bezig met het leren werken met Typo3. Daarin zit de extension: Template Auto-parser welke op zeer generieke wijze een HTML bestand om kan zetten naar een dynamische template. Als je geïnteresseerd bent in templates e.d. is dit een must-see.
Pagina: 1