Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 01:26 04.07.25 
Компютри и Интернет
   >> PHP
*Кратък преглед

Страници по тази тема: 1 | 2 | 3 | (покажи всички)
Тема Как правите дизайна ?нови  
Автор nupaT (pirat)
Публикувано11.01.05 21:39



Това не е въпрос просто ми стана любопитно.
Та мисълта ми е генерирате ли ХТМЛ-а с някакъв код (подобно на ПЕАР),
използвате темплейти, или си пишете ехо "хтмл хиър"

или нещо друго ...

Break The UnBreakable


Тема Re: Как правите дизайна ?нови [re: nupaT]  
Автор тoшo (да бе да)
Публикувано12.01.05 00:03



ми примерно така
?>
html here
<?



Тема Re: Как правите дизайна ?нови [re: nupaT]  
Автор voyager (прасе в космоса)
Публикувано12.01.05 00:10



Темплейти, само че без разни междинни псевдоезици. Като ми потрябва някой цикъл в темплейта, си го пиша на пхп

---




Тема Re: Как правите дизайна ?нови [re: voyager]  
Автор edembg (Ученик)
Публикувано12.01.05 09:30



Ми аз ползвам това:

<?php
class tpl_gen
{
var $indent = 0, $indent_str = "", $keys = array(), $vars = array(), $property = array();
var $template = "";

function tpl_gen($template)
{
$this->template = $template;
}

function set_indent($indent)
{
$this->indent = $indent;
$this->indent_str = "";
for ($i = 0; $i < $indent; $i++)
{
$this->indent_str .= "\t";
}
}

function inc_indent()
{
$this->indent_str .= "\t";
}

function dec_indent()
{
$this->indent_str = substr($this->indent_str, 1);
}

function var_set($name, $value)
{
$this->vars[$name] = $value;
}

function key_set($name, $value)
{
$this->keys[$name] = $value;
}

function property_set($value)
{
$this->property = $value;
}

function tbl_row_beg()
{
$code = $this->indent_str."<tr>\n";
return ($code);
}

function tbl_row_end()
{
$code = $this->indent_str."</tr>\n";
return ($code);
}

function table($values)
{
$code = "";
foreach ($values as $bval)
{
$this->dec_indent();
$code .= $this->tbl_row_beg();
$this->inc_indent();
$i = 0;
foreach ($bval as $sval)
{
$code .= $this->indent_str.'<td';
if ($this->property[$i] != '') $code .= ' '.$this->property[$i];
$code .= '>'.$sval."</td>\n";
$i++;
}
$this->dec_indent();
$code .= $this->tbl_row_end();
$this->inc_indent();
}
return ($code);
}

function option($content, $selected)
{
$out = "";
foreach ($content as $key => $val)
{
$out .= $this->indent_str.'<option value="'.$key.'"';
if (in_array($key, $selected)) $out .= ' selected="true"';
$out .= '>'.$val.'</option>'."\n";
}
return ($out);
}

function image($path, $alt,$height, $width, $border = 0, $end = "")
{
return ($this->indent_str.'<img src="'.$path.'" alt="'.$alt.'" height="'.$height.'" width="'.$width.'" border="'.$border.'">'.$end);
}

function link($URL, $label, $class = "", $title = "", $target = "", $end = "")
{
$res = $this->indent_str.'<a href="'.$URL.'"';
if ($title != "") $res .= ' title="'.$title.'"';
if ($target != "") $res .= ' target="'.$target.'"';
if ($class != "") $res .= ' class="'.$class.'"';
$res .= '>'.$label.'</a>'.$end;
return ($res);
}

function gen()
{
extract($this->keys);
extract($this->vars);
$fp = fopen($this->template, 'r');
if (!fp) return("Error opening template");
$var = fgets($fp, 1024);
$var = trim($var);
$$var = "";
while(!FEOF($fp))
{
$content .= fread($fp, 4096);
}
fclose($fp);
eval($content);
return ($$var);
}
}
?>

А шаблона е нещо такова:

page
$page .= ' <table width="100%" border="1" cellspacing="0" cellpadding="10">
<tr>
<td valign="top" width="120">
Name: '.$poster_name.'
<p>Date: '.$post_date.'</p>
</td>
<td valign="top">
'.$post.'

&nbsp;
<div align="right"><a href="#top" class="link">Top</a></div>
</td>
</tr>
</table>
';

Всичко става лесно и бързо. Няма шаблонен език и други зврънгулки.

И най-ярките личности си плащат тока.


Тема Re: Как правите дизайна ?нови [re: nupaT]  
Авторпxп шмaтka (Нерегистриран)
Публикувано12.01.05 15:26



ами с тклас ТемплейтПарсър, тука туземен някакъв имаме ....ама не е лош
и като си готов го даваш на дизайнера да го гримира



Тема Re: Как правите дизайна ? [re: nupaT]  
Автор Bълk (по-нов и по-лош)
Публикувано13.01.05 00:34



колкото може повече разделям ХТМЛ от код, едембг дал пример на подобно нещо, само дето аз го реализирам с 3 класа където единият е този който представлява изхода, втори съдържа списък на елементи и подреждането им и трети е вече самия елемент конструиран според параметрите на самата таблица.

^^ всичко това звучи много добре, ама и аз не мога да разбера как работи. То си работи, ама и аз не знам какво съм написал.


Иначи темплейтите си имат стойност заради сървър-сайд кеш, което е много и много ценно в моменти когато имаш страница ъпдейтвана веднъж дневно и посещавана няколко десетки хиляди пъти.



Тема Re: Как правите дизайна ?нови [re: Bълk]  
Автор nupaT (pirat)
Публикувано13.01.05 10:57



Ех ... само аз ли съм привърженик на HTML генераторите :)

Пример: $this->Create_table($array_values,$attributes)

Break The UnBreakable


Тема Re: Как правите дизайна ?нови [re: nupaT]  
Автор Bълk (по-нов и по-лош)
Публикувано13.01.05 12:00



ааа... бая неща ще трябва да описваш в параметри.



Тема Re: Как правите дизайна ?нови [re: Bълk]  
Автор nupaT (pirat)
Публикувано13.01.05 12:18



За това питам само аз ли се прецаквам така :)

Стори ми се досадно по едно време

Break The UnBreakable


Тема Re: Как правите дизайна ?нови [re: nupaT]  
Автор voyager (прасе в космоса)
Публикувано13.01.05 12:24



Това, което не ми харесва в тях, е, че не позволяват на дизайнер да си променя визията. Така че общо взето каква е ползата от тях?

---





Страници по тази тема: 1 | 2 | 3 | (покажи всички)
*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.