Autor | Zpráva | ||
---|---|---|---|
Anonymní Profil * |
#1 · Zasláno: 23. 9. 2005, 18:27:06
Ahoj, dělám, plichtím, tvořím si vlastní redakční systém s šablonami:
Takhle to má adreáře:
index.php
config.php:
page.php
Myslíte že takovej systém je prasárna ? A teď tedy problém: Dole vidíte šablony. Systém má fungovat tak: 1.zjistí co kdo chce 2.to co umí udělá jinak 404 No, tedy chci nove prispevky - (na indexu) tak se vyberou z databaze a poslou na funkci ktera je po 1 vypise, ta funkce item() je volana cyklem. Jenomže já chci vložit její výsledek do šablony index.page misto toho $PRISPEVKY$. Nevim jak to udelat kdyz volam funkci cyklem. Proste $PRISPEVKY$ v te sablone potrebuju nahradit treba 10prispevkama ktere udelala ta funkce z te jine sablony. Díky, zkuste poradit. index.page
item.page
|
||
halogan Profil |
#2 · Zasláno: 23. 9. 2005, 19:09:33
Objektove by to slo udelat tak, ze bys to tam mohl ukladat, takhle se zbytecne budes babrat s globalnima promennyma.
Ke kodu by bylo vice pripominek, tak alespon jednu: $item = fopen($sablona,'r'); file_get_contents je opravdu vhodnejsi. |
||
Anonymní Profil * |
#3 · Zasláno: 23. 9. 2005, 19:14:41
Jo, a nejaka rada, klidne i s tema globalnima promenejma, ukladat se mi to nechce. A co je to za funkci ?
|
||
halogan Profil |
#4 · Zasláno: 23. 9. 2005, 20:21:22
php.net/file_get_contents
STFW! |
||
krteczek Profil |
#5 · Zasláno: 24. 9. 2005, 00:00:04
halogan: Už zase??? q:o)
STFW!=>přečti si už konečně ten zatracený manual! (to je ta slušnější verze) |
||
halogan Profil |
#6 · Zasláno: 24. 9. 2005, 00:00:48
krteczek: Nejde jen o manual, jde o hledani na internetu.
|
||
krteczek Profil |
#7 · Zasláno: 24. 9. 2005, 00:04:58
halogan: jasně, strýček GOOOOOOOOGLE to ví!!! a proto se ho zeptej... nj ale co když ho sem google přivedl??? q:o)
krteczek |
||
Časová prodleva: 8 měsíců
|
|||
Juan Profil |
#8 · Zasláno: 28. 5. 2006, 19:24:11
<?php
class lts_template{ var $lts_tags; var $lts_template; var $only_parse_php_file; /** Constructor tridy lts_template * @param string $template - cesta k sablone * @param array || string tags - nazvy tagu ktere maji byt prepsany * @param string $only_parse_php_file - urci zda maji byt parsovany pouze soubory s koncovkou php (true) nebo jakykoliv soubor (false) * @copyright Jan Jílek, johny.vk@gmal.cz */ function lts_template($template, $tags, $only_parse_php_file = false){ $this->lts_tags = $tags; $this->lts_template = join("", file($template)); $this->only_parse_php_file = $only_parse_php_file; $this->lts_replace(); $this->lts_print_template(); } //Parsovani souboru function lts_parse($file){ //zjisteni koncovky $ext = explode(".", $file); $ext = $ext[count($ext)-1]; ob_start(); if($this->only_parse_php_file == false){ include($file); $buffer = ob_get_contents(); } elseif($this->only_parse_php_file != false && eregi("php", $ext)){ include($file); $buffer = ob_get_contents(); } else{ $file = join("", file($file)); $file = eregi_replace("<\?php", "<?php", $file); $file = eregi_replace("<\?", "<?", $file); $buffer = $file; } ob_end_clean(); return $buffer; } //Nahazeni tagu v sablone textem function lts_replace(){ foreach($this->lts_tags as $tag => $key){ $data = (file_exists($key)) ? $this->lts_parse($key) : $key; $this->lts_template = eregi_replace("{".$tag."}", $data, $this->lts_template); } return $this->lts_template; } //vytisknuti vystupu function lts_print_template(){ echo $this->lts_template; } } //Pouziti new lts_template("./ahoj.html", array( "title" => "Ahoj", "menu" => "br.php" ) ); ?> Priklad html souboru ahoj.html: <html> <title> {title} </title> <body> {menu} </body> </html> |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0