Login
网站首页 > 文章中心 > 其它

php如何做站内搜索

作者:小编 更新时间:2023-08-16 16:37:00 浏览量:1人看过

关于 php 站内搜索 的实现~~

搜索结果id和标题都是数组,就要先传递到模板,在模板里用foreach循环显示出来

比如搜索结果是

id、title,

$result=$rows;

$smarty-assign('result',$result)传递到模板

然后模板foreach循环显示

{foreach

from=$result

item=foo}

a

href="shop.php?id={$foo.id}"{$foo.title}/a

{/foreach}

大概是这样

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();

$_list = $this-Model-where ($map)-where(array('status' =0,'print_status'=0))-limit( $post_data ['first'] . ',' . $post_data ['rows'] )-select();

更多相关文章推荐:

怎么用php实现站内搜索功能

所谓站内搜索就是搜索数据库内容,重点是sql语句,并不是PHP

搜索时候对数据库一张或多张表进行查询得出结果,对结果进行处理使其成为一条条消息,然后每条消息中添加链接(一般来说 这个链接地址会和数据库 表名 以及 数据库内容的主键有关联)

以上就是土嘎嘎小编为大家整理的php如何做站内搜索相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章