我有一個使用MySQL作爲其後端的用PHP編寫的博客。存儲在數據庫中的博客文章模板,腳本在需要時提取該內容。我怎樣才能做到這一點,所以我不需要將模板存儲在我的數據庫和我的PHP文件中呢?PHP和MySQL中的頁面模板
我的PHP代碼:
<?php
$dbhost="localhost";
$dbname="database";
$dbuser="username";
$dbpass="password";
[email protected]_select_db($dbname, @mysql_connect($dbhost, $dbuser, $dbpass)) or die (mysql_error());
if (($_GET['act'] == "blog") && (is_numeric($_GET['id']))) {
$temp = mysql_fetch_row(mysql_query("SELECT template FROM templates WHERE name = 'blog'"));
$sql = mysql_query("SELECT * FROM posts WHERE id = '".$_GET['id']."'");
while($r = mysql_fetch_array($sql)) {
$pab[0] = "/{subject}/";
$pab[1] = "/{date}/";
$pab[2] = "/{blog}/";
$rab[0] = "<a href='blog-".$r[id].".html'>".stripslashes($r[subject])."</a>";
$rab[1] = $r[date];
$rab[2] = stripslashes($r[blog])."<br /><br />";
eval (" ?>" . preg_replace($pab, $rab, stripslashes($temp[0])) . " <?php ");
}
}
?>
這裏是存儲在數據庫中的代碼:
<table cellpadding='0' cellspacing='0' border='0' align='center' width='394'>
<tr>
<td><font face='Tahoma' size='4' color='#3A3A3A'><b>{subject}</b></font></td>
</tr>
<tr>
<td>{blog}</td>
</tr>
</table>
我的問題是;我怎樣才能做到這一點,所以我不需要將模板存儲在我的數據庫和我的PHP文件中呢?
用從文件('file_get_contents()')中獲取代碼的代碼替換從數據庫中獲取模板的代碼。 – 2011-05-21 15:55:17
再次,請停止多餘的問候和簽名! – 2011-05-21 15:59:03
你從來沒有聲明'$ pab'和'$ rab'是數組。 – 2011-05-21 16:02:49