Witam
Mam taki system szablonów:
klasa.php
<?php
class Erathia {
private $table_users;
public $file_string;
public $root_dir;
public $output; //zmienna
public function __construct($table1){
$this->table_users = $table1;
}
public function newLanguages($nazwa){
if (!isset($_SESSION['jezyk'])) { $_SESSION['jezyk'] = "pl";
}
$lang_session = $_SESSION['jezyk'];
require ("./languages/".$lang_session."/".$nazwa.".php"); //includuje dany jezyk
}
public function pointLang($name){
if (isset($lang[$name])) { return $lang[$name];
} else {
echo 'Brak przypisanego langu do zmienej $lang['.$name.']'; }
}
public function newTemplates($templateFile){
/* global $config;
$this->root_dir = './templates/'.$config['template'].'/';
$polaczenie = $this->root_dir.$name;
$this->file_string = file_get_contents($polaczenie);
return $name;
*/
$this->output=file_get_contents('templates/1/'.$templateFile) or
die('Error #001, plik: '.$templateFile.' nie zostal odnaleziony na serwerze! Prosze zglosic ten problem do administratora.');
}
public function pointTemplates
($strings = array()) { /* {
foreach($strings as $tag => $replace)
{
$this->file_string = str_replace('{' . $tag . '}', $replace, $this->file_string);
}
return true;
}
*/
foreach($strings as $tag=>$data){
$this->output=str_replace('{'.$tag.'}',$data,$this->output); }
} else {
die('Error #002: Nie znaleziono tresci do podmiany blokow - prosze skontaktowac sie z administratorem.'); }
}
public function viewTemplates(){
return $this->output;
}
}
?>
przyklad.php
<?php
include_once('klasa.php');
$engine = new Erathia('players');
$engine->newTemplates('przyklad.php');
$pytanie5 = 'SELECT id FROM `accounts` ';
$n=0;
{
$newstitle[$n] = $wiersz[0];
$n++;
}
$engine->pointTemplates(array( 'witaj' => 'siemka'));
echo $engine->viewTemplates(); ?>
I templates/1/przyklad.php :
<?php
Witam<br />
{witaj}
?>
I ładnie działa.
Lecz co jeśli chciałbym pobrać rekordy z bazy i je wyświetlić?
Proszę o pomoc!
Bo piszę własny mini cms i brakuje pomysłu na system szybkiej wymiany szablonów (IMG:
http://forum.php.pl/style_emoticons/default/dry.gif)