本文目錄一覽:
- 1、怎麼在網頁上用PHP做個搜索功能?
- 2、PHP實現搜索查詢功能的方法技巧
- 3、關於搜索功能那個php代碼,能再詳細點嗎?
- 4、如何在網頁中實現搜索功能?
- 5、thinkphp 怎麼在模板頁面做一個搜索功能
怎麼在網頁上用PHP做個搜索功能?
通過from表單,將查詢的關鍵詞,通過 like 跟數據進行模糊查詢對比
從topics表中查詢字段subject與傳進來的參數’$_POST[‘topic’]進行比較模糊查詢
設subject字段數據為:數學,英語,物理,化學,英文
$subject=$_POST[‘topic’];
$sql = “select * from topics where subject like ‘%” .$subject. “%'”;
$result = mysql_query($sql);
若從表單提交的‘topic’值為“學”,得到的結果將是:數學,化學
多個字段匹配查詢:
$sql = “select id,subject from topics where (id like ‘%” .$id. “%’) or (name like ‘%” .$name. “%’) or (subject like ‘%” .$subject. “%’) order by id desc”;
結果依據字段id的順序
PHP實現搜索查詢功能的方法技巧
下面是首頁顯示數據表package中的內容,但是有個條件,顯示在首頁的內容還必須是 :字段status=0,且printing=0的數據才能在首頁列表中顯示出來。
頁面上有一個“搜索”功能,輸入條件後就會根據條件來進行查詢。
一般的搜索的話,只要在首頁顯示列表方法index()中給一個:
?
$map=array();//初始化查詢條件
$map=$this-_search();//調用查詢方法
$total = $this-Model-where ($map)-count(); //這個主要是用來計算頁面顯示數據條數的
if ($total == 0) {
$_list = ”;
} else {
$_list = $this-Model-where ($map)-limit( $post_data [‘first’] . ‘,’ . $post_data [‘rows’] )-select();
}
然後,就是寫一個_search():
protected function _search(){
$map = array ();
$post_data = I ( ‘post.’ );
if ($post_data [‘packageid’] != ”) {
$map [‘packageid’] = array (
‘like’,
‘%’ . $post_data [‘packageid’] . ‘%’
);
}
return $map;
}
最後,在設置的“搜索”菜單中,調用這個搜索方法。
但是,這個搜索的.同時,還要確保在字段status=0,且printing=0的數據中進行搜索。
這個限制條件該加在什麼地方。各種嘗試和查詢後,才知道。限制條件直接加在SQL語句中就行了(如下紅色的地方)。(我自己試的時候一直在如下藍色的地方加條件,屢試屢敗!)
$map=array();
$map=$this-_search();
$total = $this-Model-where ($map)-where(array(‘status’ =0,’print_status’=0))-count();
if ($total == 0) {
$_list = ”;
} else {
$_list = $this-Model-where ($map)-where(array(‘status’ =0,’print_status’=0))-limit( $post_data [‘first’] . ‘,’ . $post_data [‘rows’] )-select();
}
更多相關文章推薦:
關於搜索功能那個php代碼,能再詳細點嗎?
數據庫(mysql):一個數據庫(search),庫裡面一個表(title),表裡面一個字段(name).
PHP頁面:兩個頁面(index.php
search.php)
第一步.創建數據庫.(目前大家應該都是用的phpmyadmin來操作數據庫的吧?)
建立一個數據庫.
第二步.建表
在剛建立的search數據庫里插入一個名字為title的表.建表時讓選插入幾個字段.寫1就可以了.
第三步.建字段
插入的字段命名為name,長度值20就可以了.
—–數據庫部分已經做完,接下來是網頁部分—–
第四步.建立兩個頁面
建立兩個文件:index.php和search.php可以使用記事本等文本工具直接建立.我使用的工具是Dreamweaver(方便嘛.呵呵).
第五步.index.php的頁面製作.
這個頁面是用來傳遞你搜索的關鍵字的.代碼如下:
form method=”post”
action=”search.php”
name=”search”
input name=”search” type=”text” value=””
size=”15″ input type=”submit”
value=”Search”
/form
這段代碼是建立一個FORM表單.專門用來提交數據的.
第一行是FORM表單的開始.它的傳遞方式是post,傳遞到search.php這個頁面.表單名為name.
第二行是文本域和提交按鈕.文本域命名為search,按鈕默認就可以了.
第三行是FORM表單的結束語句.
第五步.search.php的頁面製作.
這個頁面很關鍵.因為他是獲取index頁面傳遞過來的值,然後導出搜索的數據.
首先要綁定你建立的search數據庫,我用的DW生成的.
上一個頁面傳送的文本域是search.所以,這裡需要建立一個search變量.來接收你輸入的關鍵詞.用以下語句定義變量:
?php
$searchs = $_POST[‘search’];
?
然後建立一個記錄集,選擇高級.SQL語句中填寫:
SELECT *
FROM title
WHERE name like
‘%$searchs%’
這句的意思是選擇title表裡面的所有字段(*),然後查詢name中的$searchs變量。這個變量也就是你在index中輸入的值啦。
然後在BODY裡面綁定一個動態文本。選擇NAME。
如何在網頁中實現搜索功能?
第一,選擇百度自定義的搜索功能。百度為了有效促進站長的發展,進而實現共贏,對此百度提供了豐富的站長工具,其中百度自定義的搜索就是一款非常實用的站內搜索模塊,對於廣大的站長朋友們來說,只需要直接引入,不需要進行二次開發就能夠輕鬆的實現站內搜索。不過這種方法當然也有一定的缺陷,因為這沒有定製功能,所以在深度整合方面還存在着一定的缺陷。
第二,選擇第三方的搜索功能的開源系統。比如常見的SOLR以及SPHINX等軟件,這些開源系統能夠直接被引入到網站中,從而實現站內的搜索功能。不過對於很多技術水平不高的站長朋友們來說,應用這些開源系統往往具有一定的難度,在實際使用中需要學習,這往往會影響到站長的應用熱情。
第三,通過採購的方式來獲得需要的定製服務。這種方法顯然具有成本高的劣勢,畢竟需要採購相應的定製服務,往往需要不菲的費用,對於草根站長們來說,可能自身的投資資金不夠,所以在採購第三方定製服務方面積極性不高,但是從性能的角度上來看,定製具有良好的搜索體驗,而且現在互聯網上也開始出現了免費版,再加上這方面的系統開源情況越來越高,所以這些定製服務的費用也開始降低,所以從發展網站品牌的角度上來說,採用定製服務顯然具有更多的優勢。
總而言之,站內搜索隨着網站內容的不斷增長開始顯得越發重要,對此我們從建站的最初就要充分的想到引入到搜索功能,這不僅僅能夠有效提升用戶的搜索體驗,同時也能夠有助於百度蜘蛛的抓取。
有三種常見的方式
1、自己設計表單、編程、與數據庫鏈接檢索。
2、在百度或谷歌註冊申請站內搜索功能。獲得代碼,添加到自己的頁面中。
3、使用第三方的工具軟件,搭建檢索功能。
thinkphp 怎麼在模板頁面做一個搜索功能
1,你要做出來的是實現無刷新搜索對嗎?
這個用到前端的ajax;
說一下流程,點擊右側的放大鏡(onclick);
把input框裡面的值傳到後端;
後端根據這個值返回相應的數據。
2,給你手寫一個模板吧
$(‘#search_bottom’).click(function(){
var content = $(‘#search_content’).val();//獲取內容
$.ajax({
url://你的處理地址
data:{‘content’:content},
type:’POST’,
dataType:’json’,
success:function(){},
error:function(){}
})
});
好啦,不懂得可以追問。
原創文章,作者:LYOZ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/145506.html