2009年7月24日 星期五

表單搜尋功能

每日都要有新進度,趁著還在熱頭上,就多寫一些。

今天練習的是做一個搜尋框來搜尋關鍵字。

首先,先做一個有搜尋框的頁面。
1. 插入 > 表單 > 表單。表單屬性中的動作為查詢後要出現的頁面。方法為POST。
2. 在表單裏加一個文字框。文字框的ID訂為search。
3. 再加一個按鈕,ID為enter,值為送出,動作為送出表單。
4. 點選search文字框,在行為的+處點選檢驗表單,勾選值必要。
5. 在繫結處點+,選擇表單變數,填入search。

這次要搜尋的是物種名稱,依昨天做的genus.php的方法建立一個新的species.php頁面。
資料集是rsSP。

1. 點選資料集,再變數的地方新增一個變數,依圖所示輸入。執行階段值就是他要接收的值,為由POST傳回來的search,就是剛剛在搜尋頁面設的表單變數。然後再SQL指令裡的where後面多加入OR `chinese name` like %key%這句。因為這個頁面是連接昨天做的genus.php頁面,所以where的第一句是和genus.php頁面連接的。加入這句的目的是要告訴資料庫,如果"chinese name"欄位包含key變數的值的話就要呈現。請注意,因為chinese name這個欄位名有兩個字,所以要用``包起來,若是只有一個字就不用。是`,esc鍵下面,有~的那個鍵,而不是單引號。%是許多字元的意思,類似*的功能。



這樣就可以搜尋了!!

之後可以加一點進階的功能。

2. 在繫結處點+,選擇表單變數,填入search。
3. 在原本的ul外另設兩個段落或ul,其中一個打上"搜尋的是:",然後把繫結處產生的Form > search拉到:的後面。
4. 另一個打上"找不到啦"。
5. 點選原本的ul,在伺服器行為處點選+ > 顯示區域 > 如果資料集不是空的,即顯示。
6. 點選"找不到啦"的那個ul,在伺服器行為處點選+ > 顯示區域 > 如果資料集是空的,即顯示。

以上,程式碼大約如圖。同區塊用相同顏色的線連起來。


這樣阿,就會在搜尋結果頁面上出現搜尋的字串,如果找的到就會出現資料,如果找不到就會出現"找不到啦"。

沒有留言:

張貼留言