smarty能夠實現HTML與php代碼的分離,以前咱們用php代碼作過數據的增刪改查,如今咱們運用smarty來實現這些功能,並用分頁顯示php
查詢;html
主頁面,以表格的形式顯示數據及須要的操做:one.htmlsql
<body> <h1>主頁面</h1> <form action="one.php" method="get"> <div>題目名稱: <input type="text" name="name" /> 所屬科目: <select name="km"> <{foreach $km as $v}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/foreach}> </select> <input type="submit" value="查詢" /> </div> </form> <table border="1" width="100%" cellpadding="0" cellspacing="0"> <tr> <td>題目名稱</td> <td>答案</td> <td>所屬科目</td> <td>難度</td> <td>類型</td> <td>操做</td> </tr> <{foreach $shuju as $v}> <tr> <td><{$v[1]}></td> <td><{$v[2]}></td> <td><{$v[3]}></td> <td><{$v[4]}></td> <td><{$v[5]}></td> <td><a href="delete.php?code=<{$v[0]}>">刪除</a> <a href="update.php?code=<{$v[0]}>">修改</a></td> </tr> <{/foreach}> </table> <a href="add.php">添加數據</a> <div><{$fpage}></div> </body>
one.php:對one.html頁面進行控制,查找數據,傳送數據,並經過運行該頁面顯示one.html頁面內容;在該頁面實現分頁查詢數據庫
<?php include("../init.inc.php"); include("../../DBDA.class.php"); include("page.class.php"); $db = new DBDA(); //查科目 $skm = "select * from kemu"; $akm = $db->Query($skm); //查詢條件 $tj = " 1=1 ";//題目 $tj2 = " 1=1 ";//科目 if(!empty($_GET["name"])) { $tj = " name like '%{$_GET['name']}%' "; } if(!empty($_GET["km"])) { $tj2 = " kemu = '{$_GET['km']}' "; } $ftj = " where".$tj." and".$tj2;//注意空格 //總數 $sqlz = "select count(*) from timu".$ftj; $total = $db->StrQuery($sqlz); $page = new Page($total,2); //查詢數據實現分頁 $sql = "select * from timu".$ftj.$page->limit; $attr = $db->Query($sql); $fpage = $page->fpage(); $smarty->assign("km",$akm); $smarty->assign("fpage",$fpage); $smarty->assign("shuju",$attr); $smarty->display("one.html");
增長:post
add.html:增長數據頁面spa
<body> <h1>添加數據</h1> <form action="addchuli.php" method="post"> <div>請輸入題目名稱:<input type="text" name="name" /></div> <div>請輸入選項A:<input type="text" name="a" /></div> <div>請輸入選項B:<input type="text" name="b" /></div> <div>請輸入選項C:<input type="text" name="c" /></div> <div>請輸入選項D:<input type="text" name="d" /></div> <div>請輸入題目答案:<input type="text" name="daan" /></div> <div>請輸入科目: <select name="kemu"> <{foreach $kemu as $v}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/foreach}> </select> </div> <div>請輸入題目難度: <select name="nandu"> <{foreach $nandu as $v}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/foreach}> </select> </div> <div>請輸入題目類型: <select name="type"> <{foreach $type as $v}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/foreach}> </select> </div> <input type="submit" value="添加" /> </form> </body>
add.php;將數據傳入add.html頁面code
<?php include("../init.inc.php"); include("../../DBDA.class.php"); $db = new DBDA(); $sql = "select * from kemu"; $attr = $db->Query($sql); $sql = "select * from nandu"; $attrnd = $db->Query($sql); $sql = "select * from type"; $attrt = $db->Query($sql); $smarty->assign("type",$attrt); $smarty->assign("nandu",$attrnd); $smarty->assign("kemu",$attr); $smarty->display("add.html");
addchuli.php:將添加的數據加入數據庫orm
<?php include("../../DBDA.class.php"); $db = new DBDA(); $name = $_POST["name"]; $daan = $_POST["daan"]; $kemu = $_POST["kemu"]; $nandu = $_POST["nandu"]; $type = $_POST["type"]; $a = $_POST["a"]; $b = $_POST["b"]; $c = $_POST["c"]; $d = $_POST["d"]; //添加題目 $sql = "insert into timu values('','{$name}','{$daan}','{$kemu}','{$nandu}','{$type}')"; $r = $db->Query($sql,0); if($r) { //添加選項 $id = $db->conn->insert_id; $sqla = "insert into xuanxiang values('','{$a}','A','{$id}')"; $db->Query($sqla,0); $sqlb = "insert into xuanxiang values('','{$b}','B','{$id}')"; $db->Query($sqlb,0); $sqlc = "insert into xuanxiang values('','{$c}','C','{$id}')"; $db->Query($sqlc,0); $sqld = "insert into xuanxiang values('','{$d}','D','{$id}')"; $db->Query($sqld,0); header("location:add.php"); } else { echo "添加失敗"; }
刪除:htm
delete.php:主頁面點擊刪除按鈕時,根據傳來的主鍵值刪除數據庫相關數據blog
<?php $code = $_GET["code"]; include("../../DBDA.class.php"); $db = new DBDA(); $sql = "delete from xuanxiang where timu='{$code}'"; $db->Query($sql,0); $sql = "delete from timu where code='{$code}'"; $db->Query($sql,0); header("location:one.php");
修改;
update.html;主頁面點擊修改按鈕時,到達該頁面,並顯示出已經存在的相關數據,點擊該頁面修改按鈕後,將修改後數據傳入數據庫,原數據消失
<body> <h1>修改數據</h1> <form action="updatechuli.php?code=<{$timu[0][0]}>" method="post"> <div>請輸入題目名稱:<input type="text" name="name" value="<{$timu[0][1]}>" /></div> <{foreach $xuanxiang as $v}> <div>請輸入選項<{$v[2]}>:<input type="text" name="<{$v[2]}>" value="<{$v[1]}>" /></div> <{/foreach}> <div>請輸入題目答案:<input type="text" name="daan" value="<{$timu[0][2]}>" /></div> <div>請輸入科目: <select name="kemu"> <{foreach $kemu as $v}> <{if $timu[0][3]==$v[0]}> <option selected="selected" value="<{$v[0]}>"><{$v[1]}></option> <{else}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/if}> <{/foreach}> </select> </div> <div>請輸入題目難度: <select name="nandu"> <{foreach $nandu as $v}> <{if $timu[0][4]==$v[0]}> <option selected="selected" value="<{$v[0]}>"><{$v[1]}></option> <{else}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/if}> <{/foreach}> </select> </div> <div>請輸入題目類型: <select name="type"> <{foreach $type as $v}> <{if $timu[0][5]==$v[0]}> <option selected="selected" value="<{$v[0]}>"><{$v[1]}></option> <{else}> <option value="<{$v[0]}>"><{$v[1]}></option> <{/if}> <{/foreach}> </select> </div> <input type="submit" value="修改" /> </form> </body>
update.php:查找數據庫,將原有數據傳入update.html頁面
<?php include("../init.inc.php"); include("../../DBDA.class.php"); $db = new DBDA(); $code = $_GET["code"]; $sql = "select * from timu where code='{$code}'"; $attr = $db->Query($sql); $sql1 = "select * from xuanxiang where timu='{$code}'"; $attrxx = $db->Query($sql1); $sql2 = "select * from kemu"; $attrkm = $db->Query($sql2); $sql3 = "select * from nandu"; $attrnd = $db->Query($sql3); $sql4 = "select * from type"; $attrt = $db->Query($sql4); $smarty->assign("type",$attrt); $smarty->assign("nandu",$attrnd); $smarty->assign("kemu",$attrkm); $smarty->assign("xuanxiang",$attrxx); $smarty->assign("timu",$attr); $smarty->display("update.html");
updatechuli.php:將修改後的數據提交到數據庫,原有數據刪除
<?php include("../../DBDA.class.php"); $db = new DBDA(); $name = $_POST["name"]; $daan = $_POST["daan"]; $kemu = $_POST["kemu"]; $nandu = $_POST["nandu"]; $type = $_POST["type"]; $code = $_GET["code"]; $a = $_POST["A"]; $b = $_POST["B"]; $c = $_POST["C"]; $d = $_POST["D"]; $sqls = "delete from timu where code='{$code}'"; if($db->Query($sqls,0)) { $sql = "insert into timu values('','{$name}','{$daan}','{$kemu}','{$nandu}','{type}')"; if($db->Query($sql,0)) { //添加選項 $id = $db->conn->insert_id; $sqla = "insert into xuanxiang values('','{$a}','A','{$id}')"; $db->Query($sqla,0); $sqlb = "insert into xuanxiang values('','{$b}','B','{$id}')"; $db->Query($sqlb,0); $sqlc = "insert into xuanxiang values('','{$c}','C','{$id}')"; $db->Query($sqlc,0); $sqld = "insert into xuanxiang values('','{$d}','D','{$id}')"; $db->Query($sqld,0); header("location:one.php"); } else { echo "修改失敗"; } } else { echo "刪除失敗"; }