網站程式設計-PHP
一、原本前台 theme.html 的語法
套件是放在「{literal}」裡面,所以應該無法放變數進來,所以把這段移回去程式裡面,再從程式用變數傳至樣板

二、著手套用修改
- 首頁 index.php 目前沒有 op_list(),因為我們要處理輪播圖,所以可以複製後台的 slider.php => op_list()函數來用
 - op_list() 它  global $mysqli,$smarty,$TBL;  $mysqli,$smarty 皆在head.php引入,但$TBL並沒有,所以至後台 複制下列程式碼放到 index.php
	
#定義常用變數
$TBL['name']="show_kind";//資料表名稱
$TBL['kind']="slider_home";//分類
	
流程控制
//預設動作 default: $op="op_list"; op_list(); break;
 - 後台 slider.php 的 op_list()
	
########################################
# 列表
########################################
function op_list()
{
  global $mysqli,$smarty,$TBL;
  #取得所有記錄
  $sql = "select *
          from `{$TBL['name']}`
          where `kind`='{$TBL['kind']}'
          order by `sort` ";//die($sql);
  $result = $mysqli->query($sql) or die(printf("Error: %s <br>".$sql, $mysqli->sqlstate));
  $rows=array();
  while($row = $result->fetch_assoc())
  {
    #過濾撈出資料
    $row['sn'] = intval($row['sn']);
    //http://www.w3school.com.cn/php/func_string_htmlspecialchars.asp
    $row['title'] = htmlspecialchars($row['title'], ENT_QUOTES); // 轉換雙引號和單引號
    $row['url'] = htmlspecialchars($row['url'], ENT_QUOTES); // 轉換雙引號和單引號
    $row['sort'] = intval($row['sort']);
    $row['enable'] = $row['enable'] ? "是":"<span style='color:red;'>否</span>";
    $row['target'] = $row['target'] ? "是":"<span style='color:red;'>否</span>";
    #取得圖片src
    $col_name = "slider_home";
    $row['file_name'] = get_file_name_src($row['sn'],$col_name);
    $rows[]= $row;
  }
  $smarty->assign("DBV", $rows);
  return;
}
	
 - 修改後的 op_list()
因為在前台,所以要加上 enable='1'
逗點則在第1筆時,$file_name=空值,所以沒有逗點,
第2筆以後, $file_name 已有值,所以$comma=","; #函數 ######################################## # 列表 ######################################## function op_list() { global $mysqli,$smarty,$TBL; #取得所有記錄 $sql = "select * from `{$TBL['name']}` where `kind`='{$TBL['kind']}' and `enable`='1' order by `sort` ";//die($sql); $result = $mysqli->query($sql) or die(printf("Error: %s <br>".$sql, $mysqli->sqlstate)); /* $backstretch_js=" <script type='text/javascript'> $(document).ready(function(){ $('.top-content').backstretch([ 'http://fakeimg.pl/1600x1200/ff0000/' , 'http://fakeimg.pl/1600x1200/00ff00/' , 'http://fakeimg.pl/1600x1200/0000ff/' ], {duration: 3000, fade: 750}); }); </script> "; */ $file_name=""; $col_name = "slider_home"; while($row = $result->fetch_assoc()) { #過濾撈出資料 $row['sn'] = intval($row['sn']); $comma = $file_name ? ", ":""; #取得圖片src $file_name .= $comma. "'" .get_file_name_src($row['sn'],$col_name). "'"; } $backstretch_js=""; if($file_name){ $backstretch_js=" <script type='text/javascript'> \$(document).ready(function(){ \$('.top-content').backstretch([ {$file_name} ], {duration: 3000, fade: 750}); }); </script> "; } $smarty->assign("backstretch_js", $backstretch_js); return; } - 樣板修改
	
{$backstretch_js}