Let op, want hij is nu niet meer goed in firefox. Wees voorzichtig met veranderingen en probeer in verschillende browsers hoe het er uit ziet. Let ook op dat f5 drukken soms niet de css vernieuwd, doe dat dus met ctrl-f5quote:Op zaterdag 12 januari 2008 19:00 schreef LeeHarveyOswald het volgende:
[..]
Je bent helemaal geweldig!!!!!!!
Ja, hier is 'ie nu ook weer goed. Ik had trouwens de <p>-tags gecommentariseerd maar als je in css de p-tag een margin van 0 meegeeft moet het wel goed gaan in beide browsers. Margin wordt standaard in verschillende browsers per tag in verschillende afstanden weergegeven wat de site lelijk kan maken. Door de margin zelf in te stellen voorkom je dat en is de margin overal hetzelfde. Succes verder met je site!quote:Op zaterdag 12 januari 2008 19:41 schreef LeeHarveyOswald het volgende:
Hier (ook firefox) issie wel goed?
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 30 31 32 33 34 35 36 37 38 39 40 41 42 | class HTML{ private $title; private $content; private $disable_menu; public function HTML($title = '', $disable_menu = false){ } public function addHTML($html){ $this->content .= $html; } public function addHeader($text, $level = 2){ // voeg een header (h1 tot h7) aan de pagina toe } public function addParagraph($text, $class = ""){ // voeg een paragraaf aan de pagina toe } public function addAnchor($name){ // voeg een <a name="$name"> aan de pagina toe } private function getMenu(){ // returned op basis van de ingelogde user een menu } public function getContent(){ return $this->content; } public function getOutput(){ $header = "<!DOCT ...... "; $footer = ".....</html>"; return $header . $this->getMenu() . $this->getContent() . $footer; } } ?> |
1 2 3 4 5 6 7 8 9 10 | $template = new HTML("Logfile"); $template->addHeader("Recent activity",2); $template->addParagraph("In the .... place:"); [...] $template->addHTML($log_table); echo $template->getOutput(); ?> |
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 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl"> <head> <title>Portfolio - Logfile</title> <link rel="stylesheet" type="text/css" href="include/stylesheet.css" /> <script type="text/javascript" src="include/javascript.js"></script> </head> <body> <h1>Mijn portfolio</h1> <ul class="menu"> [...] <li><a href="logfile.php">Logfile</a></li> [...] </ul> <h2>Recent activity</h2> <p>In the [...] place:</p> <table> [...] </table> <p class="footer">© 2008</p> </body> </html> |
Ik begrijp je functies niet, bijv "addParagraph", waar voegt ie dan een paragraaf toe? Aan het einde? Aan het begin? Ergens in het midden?quote:Op zaterdag 12 januari 2008 20:06 schreef Geqxon het volgende:
Om mijn layout te maken heb ik hetvolgende geschreven:
[ code verwijderd ]
Het aanmaken van een pagina gaat nu als volgt:
[ code verwijderd ]
Mijn vragen:Maak ik nu correct gebruik van OO in PHP? Is dit een fatsoenlijke manier om een template systeem op te zetten?
Bedankt, hier heb ik wat aan.quote:Op zaterdag 12 januari 2008 22:12 schreef Farenji het volgende:
[..]
Ik begrijp je functies niet, bijv "addParagraph", waar voegt ie dan een paragraaf toe? Aan het einde? Aan het begin? Ergens in het midden?Lijkt me weinig flexibel, hoe dan ook.
En een header, dat is voor mij meestal een http header (bijv "Content-type: text/html"), de doctype is gewoon deel van de html.
Ik heb het idee dat je het jezelf moeilijker maakt dan noodzakelijk, waarom niet gewoon een template gebruiken die je inlaadt? Hier loop je jezelf alleen maar te beperken. Object georienteerd programmeren is niet iets dat "moet" maar het is iets dat je leven als programmeur makkelijker maakt en zorgt voor duidelijke structuur die je later ook makkelijk kan hergebruiken. De structuur die je hier hebt is veel te specifiek en te beperkt - misschien bruikbaar voor die ene applicatie maar voor een andere mag je het weer opnieuw doen. Dat is zonde.
Ik begrijp niet precies wat je bedoelt, maar ik vind op zich de timestamp-suggestie niet onaardig....quote:Op zaterdag 12 januari 2008 11:06 schreef autocue het volgende:
Een manier om zowel de performance te houden van een grote batch queries als het kunnen achterhalen is het zetten van een flag (of een timestamp) op je duplicaat tabelrow. Je zou bijvoorbeeld zoiets kunnen doen als :
[ code verwijderd ]
Niet supernetjes en het werkt alleen onder MySQL, maar 't doet (als 't goed is) z'n werk.
De opmaak gaat eigenliijk per definitie via css, daar is css voor, maar de structuur... hoe doe je dat dan?quote:Op zaterdag 12 januari 2008 22:24 schreef Geqxon het volgende:
De opmaak gaat via CSS, dus een template inladen is hier niet nodig.
Die kwak ik van top-to-bottom in de body neer, en geef ik een passende class-naam mee. Dat gaat voor nu prima, een stukje hierboven staat een voorbeeld hoe ik met deze class een pagina opbouw.quote:Op zaterdag 12 januari 2008 22:52 schreef Farenji het volgende:
[..]
De opmaak gaat eigenliijk per definitie via css, daar is css voor, maar de structuur... hoe doe je dat dan?
Als je niet gaat positioneren via je class maar dat static via css gaat doen wat is dan nog het doel van de class? Imo wordt het pas bruikbaar als je alle css-styles meegeeft in de tags in het html-bestand. Anders kun je beter een template aanmaken en die elke keer gebruiken.quote:Op zaterdag 12 januari 2008 23:02 schreef Geqxon het volgende:
[..]
Die kwak ik van top-to-bottom in de body neer, en geef ik een passende class-naam mee. Dat gaat voor nu prima, een stukje hierboven staat een voorbeeld hoe ik met deze class een pagina opbouw.
Als je de MySQL ON DUPLICATE functionaliteit gebruikt kun je juist de duplicaten markeren en deze dus later selecteren, daar doelde ik opquote:Op zaterdag 12 januari 2008 22:26 schreef Xcalibur het volgende:
[..]
Ik begrijp niet precies wat je bedoelt, maar ik vind op zich de timestamp-suggestie niet onaardig....
Alleen heb ik dan juist alle niet-gewijzigde records te pakken, wat niet per se hetzelfde is als alle duplicaten...
Depends. Want als er dan toch stiekem ooit 2 records zijn, weet je niet zeker of hij wel de goede van de twee update. Als je dan toch een LIMIT 1 doet, gelijk ook maar even een ORDER BY erbij, zodat hij wel de "beste" van de twee pakt.quote:Op zondag 13 januari 2008 02:22 schreef saban het volgende:
Heeft het nut om LIMIT 1 te gebruiken bij een UPDATE wanneer je zeker bent dat de limit ook altijd 1 is? Of is het overbodig?
Ik ga d'r even naar kijkenquote:Op zondag 13 januari 2008 02:14 schreef autocue het volgende:
Als je de MySQL ON DUPLICATE functionaliteit gebruikt kun je juist de duplicaten markeren en deze dus later selecteren, daar doelde ik op.
Ik zag het! Anders viel in IE het menu over de titelkop...quote:Op zaterdag 12 januari 2008 19:47 schreef Tarabass het volgende:
[..]
Ja, hier is 'ie nu ook weer goed. Ik had trouwens de <p>-tags gecommentariseerd maar als je in css de p-tag een margin van 0 meegeeft moet het wel goed gaan in beide browsers. Margin wordt standaard in verschillende browsers per tag in verschillende afstanden weergegeven wat de site lelijk kan maken. Door de margin zelf in te stellen voorkom je dat en is de margin overal hetzelfde. Succes verder met je site!
Duidelijk, thanksquote:Op zondag 13 januari 2008 11:39 schreef Xcalibur het volgende:
Het zoeken op een geindexeerd ID gaat echt onwaarschijnlijk snel, dus ik vermoed dat de UPDATE zelf de bottleneck is zeg maar.... het toevoegen van een LIMIT zal wellicht *iets* uitmaken, maar dan heb je het toch wel over (tien?)duizenden van seconden denk ik...
Maak anders een een benchmarkje, waarin je beide varianten 10.000 draait en de tijd bijhoudt
Je kan de server als een service installeren en daarvan kun je aangeven of die automatisch of handmatig gestart moet worden.quote:Op maandag 14 januari 2008 12:54 schreef Flaccid het volgende:
Als ik een simpel php servertje op mn pc wil instaleren, is dat dan mogelijk zonder dat dat ding altijd loopt? Dat ik hem alleen run wanneer nodig? Zijn er nog verschillende manieren om zon php server te maken? Ik wil hem gewoon om wat scriptjes te testen...
www.wampserver.com, voor windows, bevat alles wat nodig is om gelijk te beginnen.quote:Op maandag 14 januari 2008 12:54 schreef Flaccid het volgende:
Als ik een simpel php servertje op mn pc wil instaleren, is dat dan mogelijk zonder dat dat ding altijd loopt? Dat ik hem alleen run wanneer nodig? Zijn er nog verschillende manieren om zon php server te maken? Ik wil hem gewoon om wat scriptjes te testen...
Bedankt, ga het zo eens uitchecken!quote:Op maandag 14 januari 2008 13:11 schreef Scorpie het volgende:
[..]
www.wampserver.com, voor windows, bevat alles wat nodig is om gelijk te beginnen.
Kan je zelf aan/uit zetten.
1 2 3 4 5 6 7 8 | $data = array('foo'=>'bar', 'baz'=>'boom', 'cow'=>'milk', 'php'=>'hypertext processor'); echo http_build_query($data); // foo=bar&baz=boom&cow=milk&php=hypertext+processor ?> |
Kan je een login systeem ook het beste met sessies doen? Want ik wil nog een login systeem in mijn cms doen uiteraard.quote:Op maandag 14 januari 2008 14:14 schreef HuHu het volgende:
Opslaan in een sessie is een goede optie. Als je het via de URL wilt meegeven kan dat bijvoorbeeld middels de http_build_query() functie. Het resultaat daarvan kun je gebruiken na de ? in de URL.
[ code verwijderd ]
Bron: http://php.net/http_build_query
Zelf maak ik ook gebruik van een sessie bij een zelfgebouwd CMS. Ik controleer dan of die sessie bestaat en of de waarde juist is, en dan geef ik pas de content weer.quote:Op maandag 14 januari 2008 14:40 schreef Flaccid het volgende:
[..]
Kan je een login systeem ook het beste met sessies doen? Want ik wil nog een login systeem in mijn cms doen uiteraard.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |