1. 程式人生 > >thinkphp5使html5實現動態跳轉

thinkphp5使html5實現動態跳轉

1.從資料庫取資料

在application/模組名/controller/控制器名/方法名中對資料庫進行獲取,這裡為了方便,舉例為application/modulea/controller/x/test

$result = Db::name('data')->where('uid',session('xx.uid'))->select();

資料傳遞

這裡可以是標題欄的資料,然後就通過

 $this->assign('data', $result);

這種方式可以傳遞到

application/modulea/view/x/test.html

volist資料分解

這個test.html可以通過volist進行處理:

{volist name="data" id="item_data"}
    <h3>{$item_data}</h3>
{/volist}

此時,$i為預設索引,可以這樣用:

{volist name="data" id="item_data"}
    <h3>{$i.'='.$item_data}</h3>
{/volist}

action交還控制器

如果html介面需要某種處理,可以直接寫個action交給控制器進行跳轉就行了。

<form action="/modulea/x/login"></form>

部分跳轉

如果需要部分跳轉,則需要使用iframe,比如iframe的src為某個相對網址(首次載入地址),的name是fr

<iframe src='/modulea/x/test2' name='fr'></iframe>

點選旁邊的某個按鈕以後,需要進行跳轉,所以,要寫一個超連結:

<a href="{:url($item_data['url'])}" target="fr"></a>

注意,此處的target必須要與前面的name一致,此處url也是相對網址,格式為:/模組名/控制器名/方法名。

過程總結:

控制器取資料,取完用assign傳給檢視,檢視用volist進行展示,檢視通過action來進行頁面跳轉。

ps:過濾非法網址:

$this->user = session('xx');
if(!this->user['uid']){
    return $this->redirect('/modulea/x/login');
}