dede搜索引擎
1.dede模板中的html:
<form action="{dede:fieldname='phpurl'/}/search.php" name="formsearch">
<inputtype="hidden" name="kwtype" value="1">
<inputname="keyword" id="keyword" type="text" />
<selectname="searchtype" id="searchtype">
<optionvalue="titlekeyword"selected>智能模糊搜索</option>
<optionvalue="title">仅搜索标题</option>
</select>
<inputtype="image" src="{dede:fieldname='templeturl'/}/images/topsearch_submit.gif"/>
</form>
2.search.php代码:
require_once(dirname(__FILE__)."/../include/config_base.php");
require_once(dirname(__FILE__)."/../include/inc_arcsearch_view.php");
$timestamp = time();
$timelock = '../data/time.lock';
if($cfg_allsearch_limit < 1) $cfg_allsearch_limit =1;//cfg_allsearch_limit是网站全局搜索时间限制
if(file_exists($timelock))
{
if($timestamp - filemtime($timelock)< $cfg_allsearch_limit)
{
showmsg('服务器忙,请稍后搜索','-1');
exit();
}
}
@touch($timelock,$timestamp);
$channelid = isset($channelid) &&is_numeric($channelid) ? $channelid : 0;
$typeid = isset($typeid) &&is_numeric($typeid) ? $typeid : 0;
if($typeid>0) $channelid = 0;
if(!isset($searchtype)) $searchtype = '';
if($searchtype != 'titlekeyword') $searchtype = 'title';
$cacheid = isset($cacheid) &&is_numeric($cacheid) ? $cacheid : 0;
$kwtype = isset($kwtype) && $kwtype== 0 ? 0 : 1;
$keyword = htmlspecialchars(stripslashes($keyword));
$keyword = ereg_replace("[\"\r\n\t\*\?\(\)\$%']","",trim($keyword));
$keyword = addslashes($keyword);
if( ($cfg_notallowstr!='' &&eregi($cfg_notallowstr,$keyword)) || ($cfg_replacestr!=''&& eregi($cfg_replacestr,$keyword)))
{
echo "你的信息中存在非法内容,被系统禁止!<ahref='javascript:history.go(-1)'>[返回]</a>";exit();
}
if($keyword=='' || strlen($keyword) < 3 ||strlen($keyword) > 30)
{
ShowMsg("关键字长度必须要3-30字节之间!","-1");
exit();
}
$sp = newSearchView($typeid,$keyword,$channelid,$searchtype,$kwtype,$cacheid);
$sp->Display();
$sp->Close();
?>
3.touch函数:
语法:int touch(string filename, int [time]);
返回值:整数
函数种类:文件存取
内容说明 |
本函数可用来配置最后修改时间。若有指定参数time,则依指定的时间;若无指定时间,则为服务器的时间。和 UNIX 的同名指令一样,若文件不存在,则会建立 filename文件。成功则返回 true 值,其它失败时则返回 false。
4.StripSlashes(Stringstr)函数
语法:StripSlashes(Stringstr)
返回值:字符串
函数种类:资料处理
内容说明:本函数可以去掉字符串中的反斜线字符。若是连续两个反斜线,则去掉一个,留下一个。若只有一个反斜线,就直接去掉。
5.htmlspecialchars函数
语法:htmlspecialchars(string,quotestyle,character-set)
参数 | 描述 |
---|---|
string | 必需。规定要转换的字符串。 |
quotestyle |
可选。规定如何编码单引号和双引号。
|
character-set |
可选。字符串值,规定要使用的字符集。
|
例子
<html>
<body>
<?php
$str = "John & 'Adams'";
echo htmlspecialchars($str, ENT_COMPAT);
echo "<br />";
echo htmlspecialchars($str, ENT_QUOTES);
echo "<br />";
echo htmlspecialchars($str, ENT_NOQUOTES);
?>
</body>
</html>
浏览器输出:
John & 'Adams'
John & 'Adams'
John & 'Adams'
如果在浏览器中查看源代码,会看到这些HTML:
<html>
<body>
John & 'Adams'
John & 'Adams'
John & 'Adams'
</body>
</html>
dede搜索引擎的更多相关文章
- DEDE整站动态化或整站静态化设置方法,织梦栏目批量静态/动态方法
跟版网建站接到一个朋友提问,100多各栏目全部要从动态变成静态,里面的文章也要静态化,如何更快捷的设置dede的静态化或者动态化呢? 直接用DEDE后台的SQL命令行工具, SQL语句: DEDE整站 ...
- dede列表页分页地址优化(不同url相同内容问题解决)<转自http://www.966266.com>
<注明,完全转自http://www.966266.com/seoblog/?p=75> 存在问题 DEDE默认分类分页地址存在不同URL相同内容问题,导致内容重复,对SEO非常不利.情况 ...
- Browser设置搜索引擎
Browser设置搜索引擎,在com.android.browser.preferences.GeneralPreferencesFragment中加载R.xml.general_preference ...
- 关于将dede织梦data目录迁移出web目录
关于将dede织梦data目录迁移出web目录织梦官方提供了一个教程,但是如果你是按照他们提供的教程做的话会出现很多问题.比如验证码问题,图片显示问题等等一大堆.织梦官方这种是很不负责任的,因为那个教 ...
- DEDE整站动态化或整站静态化设置方法
简单说下的是,网站空间小而数据库还可以的话,使用动态浏览也是不错的,但是官方的程序默认的生成静态浏览的,只要一发布文章,就会自动生成静态页面,难道做发布文章还要一个一个去更改其他的设置吗?麻烦.对于采 ...
- DEDE网站地图优化技巧
DEDE网站地图优化技巧-把网站地图生成在系统根目录,利于搜索引擎收录相信恨多用DEDECMS做站的朋友,为避免将data目录内的东西随便外泄,在robots中将data目录屏蔽了,但是DEDE默认的 ...
- Livecoding.tv2.5发布,增加“用户搜索引擎”功能,方便用户找到匹配的程序员
近日,在Livecoding.tv最新发布的博客中,介绍了该平台2.5版的一系列新功能,其中的User Discovery Engine(用户搜索引擎)受到大家的欢迎.使用该引擎,可以很方便地查找在L ...
- Nutch搜索引擎(第1期)_ Nutch简介及安装
1.Nutch简介 Nutch是一个由Java实现的,开放源代码(open-source)的web搜索引擎.主要用于收集网页数据,然后对其进行分析,建立索引,以提供相应的接口来对其网页数据进行查询的一 ...
- HTML <meta> 标签,搜索引擎
关于Mate标签的详尽解释,请查看w3school 网址为:http://www.w3school.com.cn/tags/tag_meta.asp meta标签作用 META标签是HTML标记HEA ...
随机推荐
- navicat连接oracle数据库报ORA-28547: connection to server failed, probable Oracle Net admin error错误的解决方法
原文:navicat连接oracle数据库报ORA-28547: connection to server failed, probable Oracle Net admin error错误的解决方法 ...
- Oracle 11g for Windows 简体中文版的安装过程
原文:Oracle 11g for Windows 简体中文版的安装过程 我的配置 操作系统:Windows Server 2003 sp2 内存:1024M以上 1.下载Oracle 11g 地址 ...
- Windows 7硬盘安装CentOS 6.4 双系统 (WIN7硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))
WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2.Ubuntu 12.04) 近期在看<鸟哥私房菜:基础学习篇>.认为非常不错,想要用U盘装个windows 7 和 ...
- MySQL之数据库结构优化
1.选择合适的数据类型 一.选择能够存下数据类型最小的数据类型 二.可以使用简单的数据类型.int 要比varchar在MySQL处理上简单 三.尽可能的使用not null 定义字段 四.尽量少 ...
- jquery中的一点工作小记
在做一个页面的时候,网页中由许多块相同的地方 ,例如页面中会有多个地方用到TAB 效果,在使用each()遍历以后 不一定会正常显示,这是因为写的html静态页面中只有当前板块中有这个的类,若是用J ...
- 使用Excel快速发送大量的电子邮件
使用Excel快速发送大量的电子邮件.两个步骤: 1. 准备发送数据: a.) 打开Excel,新Book1.xlsx b.) 填写以下内容. 第一列:接受者,第二列:邮件标题,第三列:文,第四列:附 ...
- Metadata是.NET平台的核心灵魂--(转载)
(转载)Metadata是.NET平台的核心灵魂 July 7th, 2010 jzli Leave a comment Go to comments 网友来信:李老师,您好!我参加过你去年到我们公司 ...
- 自动生成api文档
vs2010代码注释自动生成api文档 最近做了一些接口,提供其他人调用,要写个api文档,可是我想代码注释已经写了说明,能不能直接把代码注释生成api?于是找到以下方法 环境:vs2010 先下载安 ...
- Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical
http://julialang.org/ julia | source | downloads | docs | blog | community | teaching | publications ...
- C++一些注意点之转换操作符
转换操作符定义 类可通过一个实参调用的非explicit构造函数定义一个隐式转换(其他类型—>类类型).当提供了实参类型的对象而需要一个类类型的对象时,编译器将使用该转换.这种构造函数定义了到类 ...