html template + php

提示: 作者被禁止或刪除 內容自動屏蔽

參考下 http://www.discuz.net/

[ 本帖最後由 sckds 於 2010-1-8 20:06 編輯 ]

TOP

咁似smarty...可以參考一下

TOP

為什麼不用最簡單的string replace function

TOP

easy la....

bbcode 黎嘛....
講不上template,,,


<?php
include('../../connect/connect.php');

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>產品</title>
</head>

<body>

<h1><a href="/pos">主頁</a> &gt;&gt; <a href="/pos/setting">設定</a> &gt;&gt; 範本</h1>
<?php  
  
// based on http://www.phpit.net/article/create-bbcode-php/  
// modified by www.vision.to  
// please keep credits, thank you :-)  
// document your changes.  
  
function bbcode_format ($str) {

       
    $str = htmlentities($str);  
  
    $simple_search = array(  
                //added line break   
                '/\[br\]/is',  
                '/\[b\](.*?)\[\/b\]/is',  
                '/\[i\](.*?)\[\/i\]/is',  
                '/\[u\](.*?)\[\/u\]/is',  
                '/\[url\=(.*?)\](.*?)\[\/url\]/is',  
                '/\[url\](.*?)\[\/url\]/is',  
                '/\[align\=(left|center|right)\](.*?)\[\/align\]/is',  
                '/\[img\](.*?)\[\/img\]/is',  
                '/\[mail\=(.*?)\](.*?)\[\/mail\]/is',  
                '/\[mail\](.*?)\[\/mail\]/is',  
                '/\[font\=(.*?)\](.*?)\[\/font\]/is',  
                '/\[size\=(.*?)\](.*?)\[\/size\]/is',  
                '/\[color\=(.*?)\](.*?)\[\/color\]/is',  
                  //added textarea for code presentation  
               '/\[codearea\](.*?)\[\/codearea\]/is',  
                 //added pre class for code presentation  
              '/\[code\](.*?)\[\/code\]/is',  
                //added paragraph  
              '/\[p\](.*?)\[\/p\]/is',  
                '/\{name\}/is',
                );  

$simple_replace = array(  
                                //added line break  
               '<br />',  
                '<strong>$1</strong>',  
                '<em>$1</em>',  
                '<u>$1</u>',  
                                // added nofollow to prevent spam  
                '<a href="$1" title="$2 - $1" target="_blank">$2</a>',  
                '<a href="$1" title="$1" target="_blank">$1</a>',  
                '<div style="text-align: $1;">$2</div>',  
                                //added alt attribute for validation  
                '<img src="$1" alt="" />',  
                '<a href="mailto:$1">$2</a>',  
                '<a href="mailto:$1">$1</a>',  
                '<span style="font-family: $1;">$2</span>',  
                '<span style="font-size: $1;">$2</span>',  
                '<span style="color: $1;">$2</span>',  
                                //added textarea for code presentation  
                                '<textarea class="code_container" rows="30" cols="70">$1</textarea>',  
                                //added pre class for code presentation  
                                '<pre class="code">$1</pre>',  
                                //added paragraph  
                                '<p>$1</p>',  
                );  


$result = mysql_query("SELECT * FROM setting_company");
while ($row = mysql_fetch_array($result)){
    $simple_replace[] = $row[chinese_name];
}

    // Do simple BBCode's  
    $str = preg_replace ($simple_search, $simple_replace, $str);  
  
    // Do <blockquote> BBCode  
    $str = bbcode_quote ($str);  
  
    return $str;  
}
  
  
  
function bbcode_quote ($str) {  
    //added div and class for quotes  
    $open = '<blockquote><div class="quote">';  
    $close = '</div></blockquote>';  
  
    // How often is the open tag?  
    preg_match_all ('/\[quote\]/i', $str, $matches);  
    $opentags = count($matches['0']);  
  
    // How often is the close tag?  
    preg_match_all ('/\[\/quote\]/i', $str, $matches);  
    $closetags = count($matches['0']);  
  
    // Check how many tags have been unclosed  
    // And add the unclosing tag at the end of the message  
    $unclosed = $opentags - $closetags;  
    for ($i = 0; $i < $unclosed; $i++) {  
        $str .= '</div></blockquote>';  
    }  
  
    // Do replacement  
    $str = str_replace ('[' . 'quote]', $open, $str);  
    $str = str_replace ('[/' . 'quote]', $close, $str);  
  
    return $str;  
}  
/* used in Vision.To CMS  
function VISION_TO_PAGE_CONTENT_PROCESSOR ($content)  
{  
$content=bbcode_format ($content);  
return $content;  
}  
*/  
/*Usage in CodeCharge Studio :  
before show event , the content_html  is label property as HTML   
$content=bbcode_format ($cms_pages->content_html->GetValue());  
$cms_pages->content_html->SetValue($content);  
*/  
?>  


<form method='post' action=''>
<textarea name='msg'>
</textarea>
<input type='submit'>
</form>


<?php

echo bbcode_format ($_POST[msg]);


?>



</body>
</html>

TOP

$result = mysql_query("SELECT * FROM setting_company");
while ($row = mysql_fetch_array($result)){
    $simple_replace[] = $row[chinese_name];
}

依一句就係拎返database的野,,
我加落去的

TOP

提示: 作者被禁止或刪除 內容自動屏蔽

TOP

回覆 7# 的帖子

緊係得啦,,
用到php, 有permi, 就咩都得

TOP