phpcms网页替换验证码及搜索功能

在使用phpcms替换网页的时候,除了正常的替换栏目、内容页等,其他的什么验证码啦,提交表单了,搜索功能了,这些在替换的时候可能会对一些默认文件有一些小小 的改变

下面就是自己在失败中成功的过程,最后终于替换成没有bug的替换。作者:悦~

一、phpcms的验证码替换

有验证码的地方,一般就是表单了,那么首先就要先制作表单出来了,表单的制作过程很简单,如下:

A。制作一张表单出来

(1)登录自己的phpcms后台管理

(2)登录进去后,按照这个步骤进行添加表单

  a.模块------表单向导:如图

  b.打开表单向导后,单击“添加表单向导”按钮,如图:

  c.打开对话框进行添加信息,单击确定

  d.确定之后会在这个窗口出现刚添加的自己的表单,如图:

(3)向表单中添加字段

  a.单击当前页面中的“添加字段”按钮,打开添加字段窗口

  b.在添加字段窗口中进行添加信息(对窗口中的每一个进行设置,比如字段类型、长度、字段名字等)

  c.单击“提交”后,这个字段就添加成功了,查看自己添加的所有字段

  单击“管理字段”就可以查看添加的所有字段信息

  d.这样表单就有了,将表单添加到替换的网页中,只要复制这一句js就可以了,如图:

复制这句话到网页中的相应位置就可以了

到这里表单就有了,可以看下表单的样式,单击“预览”按钮就可以了

(3)修改表单的开头信息

  正常的添加到网页后,会出现这么一个样式,如图:

  a.打开自己的phpcms模板的默认模板文件夹,如图

  b.打开默认的文件夹,找到“formguide”文件夹中的“show_js.html”文件,打开该文件,如图:

     

  c.在打开的show_js.html文件中,修改这个位置,如图:

这样的话,表单才是真正的结束了

B。添加验证码到表单

  (1)添加一个字段名“验证码”,这个步骤上面都有,不详说

  (2)同样的在默认的文件夹,找到“formguide”文件夹中的“show_js.html”文件,打开该文件

在这个位置添加这么一段代码,如图:

添加的代码,如下:


1

2

<tr>  <th style=" border:0px;"><font color="red">*</font>验证码:</th> <td style=" border:0px;">  <input name="code" type="text" id="code" size="10"  class="input-text" style="width:492px;"/></td> </tr>

<tr><th style=" border:0px;"></th><td style=" border:0px;"><img id=‘code_img‘ onclick=‘this.src=this.src+"&"+Math.random()‘  src=‘{APP_PATH}api.php?op=checkcode&code_len=4&font_size=14&width=110&height=30&font_color=&background=‘ width="201" height="50"> </td></tr>

  (3)默认模板中的文件修改完成后,还需要修改一个地方,那就是改了\modules\formguide下的index.php文件 ,如图

想要找到这个文件夹,同样的都是存在phpcms文件夹中

        

打开文件并且添加这么一句代码,添加位置如图:

添加的代码,如下:


1

$session_storage ‘session_‘.pc_base::load_config(‘system‘,‘session_storage‘); pc_base::load_sys_class($session_storage);

这样,验证码就完成了,如图显示:

点击图片也是可以修改验证码的内容的。

通过不断的尝试,这就是完整的替换验证码的步骤了~~~~

想要查看用户提交的表单,可以查看这个地方:

每一个表单的右边,单击“信息列表”:

进入信息列表就可以查看那些人添加了表单,并且都是提交什么内容,如图:

二、 搜索功能

所谓的全站搜索功能,其实就是根据输入的内容进行网站搜索。

第一步:搜索页面的form表单提交书写,form表单怎么写就不多说了。


1

2

3

4

5

6

7

8

<form name="search" id="" action="{APP_PATH}index.php" method="get" style="170px; display:inline-block; float:left">

           <h1>产品搜索:</h1><input name="q" value="请输入查询关键词" type="text"  onclick="javascript:document.getElementById(‘q‘).value=‘‘;" id="q" style="width:186px; height:22px; border-right-width:0px; margin-top:7px;"/><input id="siteid" type="hidden" value="1" name="siteid"><input type="submit" name="submit" id="submit" value="立即搜索" style="width:60px; height:26px; border:0px;

            <!--文字输入框--><br>        <input type="hidden" value="search" name="m">  <!--进行搜索的页面-->

            <input type="hidden" value="index" name="c">   <!--搜完成功后返回的页面-->

            <input type="hidden" value="init" name="a">

            <input id="typeid" type="hidden" value="1" name="typeid"> <!--typeid的类型-->

                                

</form>

  

这样就把想要查找的内容传入index.php文件进行处理(index.php文件在modules/search/index.php)这个php文件就是对上面传入的各类值进行判断和处理

如图所示:

第二步:这个form表单返回的页面

这个返回值的页面不是栏目页,也不是列表页,也不是内容页,是一个独立的文件

(1)在你自己的模板之下建立一个search文件夹:路径如下图:

不是在content文件里建立,而是它的外面建立search文件夹

(2)search文件夹里面有这么几个文件(自己的返回页面进行拆分)

将一个整体的静态页面像其他的页面一样拆分为这么几个部分:header、footer、index、list这么4个页面文件

(3)搜索结果的显示

拆分就不多说了,知道phpcms的都会拆分,现在就是把index页面和list页面进行修改

index页面是为了搜索没有内容的时候返回的页面,这个页面可以自己设置,也可以使用phpcms的默认页面。

list页面就是搜索的结果页面了,提醒一下:这个页面中除了要显示搜索的内容外,其他的内容就不要进行遍历显示了,因为这样会把搜索的结果出错了,不会显示搜索的结果。

显示搜索结果页面的遍历代码如下:(把这个放到想要显示的位置,样式根据自己的样式进行修改)


1

2

3

4

5

6

7

8

9

10

11

12

13

<ul>

      {loop $data $i $r}

                         

      {if $r[‘thumb‘]}  <!--搜索的结果的图片-->

      <li><b><a href="{$r[url]}"><img src="{$r[thumb]}" /></a></b><!--搜索的结果图片和路径-->

      {/if}

      <h3><a href="{$val[url]}">{$r[title]}</a></h3></li><!--搜索结果的路径和标题-->

      {/loop}  

</ul>

      {if empty($data)}未找到结果{/if}  <!--没有找到时的提示-->

      <div id="pager" class="fy">

          {$pages}  <!--结果的分页-->

      </div>

  

注意:可以进去phpcms的默认模板进行查看search的文件夹中的文件怎么写的,注意里面有几个js文件需要引进,不能不写。  


1

2

3

4

{if $setting[‘suggestenable‘]}

<script type="text/javascript" src="{JS_PATH}jquery.suggest.js"></script>

<script type="text/javascript" src="{JS_PATH}search_suggest.js"></script>

{/if}

第三步:进行检验

查看结果的页面是否有问题:

(1)搜索站里面有“气”的产品

(2)查看页面是不是出来了(东西多的应该是有分页的,还有搜索的关键字进行高亮显示,这是样式的修改)

到这里phpcms的全站搜索的替换就结束了。

需要注意的点:

(1)search文件夹是在模板content同一级文件

(2)search文件夹中的文件也是要拆分为“头、中、下”

(3)拆分的全部文件中除了查找结果之外,其他的内容不能有任何的查找数据库的遍历

原文地址:https://www.cnblogs.com/Whitehat/p/8853965.html

时间: 2024-07-30 17:39:37

phpcms网页替换验证码及搜索功能的相关文章

Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音

转载请注明出处:http://blog.csdn.net/xiaanming/article/details/12684155 前段时间因为换工作的缘故又恰巧碰到国庆节,所以有段时间自己没有更新博客了,过完国庆到新公司报道,感觉还不错,就是现在住的地方离新公司有点远,地铁20站,伤不起啊,我每天早上7点多就要起床,然后屁颠屁颠的去挤地铁上班,晚上下班还要挤地铁,先不说路程远,车费一天就要10几块,我的银子啊,有坐龙华线去上班的深圳程序员不?听说那条线上班高峰期很挤?我没在上班高峰期坐过那趟车,我

sharepoint foundation 2013升级sp1补丁后无法使用搜索功能

直接安装了sharepoint foundation 2013 with sp1后,发现新建的站点都没有默认的搜索框. 具体报错特征: 1.添加搜索框 web part,保存页面后报错"公共语言运行时检测到无效的程序" 2.当时想了另外一种方法,在网站集下新建搜索中心网站.这个时候会有2个选择,2010样式和2013样式.当使用2010样式的时候,尽然成功进入页面,并实现搜索功能.而使用2013样式,或者从2010样式升级到2013样式后,页面报错"Web 部件维护网页: 如

企业内搜索引擎项目(四):搜索功能的实现

1. 思路 在进行网页搜索的过程中,需要考虑索引更好的问题=> 单独使用另一条线程控制磁盘索引的更新,该线程同时更新server.conf配置文件,表明当前正在使用的是哪一个磁盘数据库: 网页搜索的时候根据server.conf中的index信息打开对应的数据库: 2. 实战 利用Xapian开源库进行网页检索操作 (Xapian搜索功能的实现): @ 流程 重新以只读的方式打开磁盘索引文件: 将磁盘索引和内存索引都加入待搜索的索引库searchdb_中: 将客户端传输进来的待查询字符串进行分词

C#下利用正则表达式实现字符串搜索功能的方法(转)

关键字:正则表达式.元字符.字符串.匹配: 1.正则表达式简介:正则表达式提供了功能强大.灵活而又高效的方法来处:.NET框架正则表达式并入了其他正则表达式实现的: 2.字符串搜索:正则表达式语言由两种基本字符类型组成:原义(正常:一般表达式语言是一种可以编写搜索表达式的语言: 3..NET框架的正则表达式类:下面通过介绍.NET框架的正则表达式类,熟悉一下: 1.正则表达式简介 正则表达式提供了功能强大.灵活而又高效的方法来处理文本.正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到

Android开发本地及网络Mp3音乐播放器(十三)网络音乐搜索功能实现,歌名歌手专辑名搜索

实现功能: 实现网络音乐搜索功能 使用观察者设计模式 使用URLEncoder.encode转码 SearchMusicUtils是重点 截止到目前的源码下载: http://download.csdn.net/detail/iwanghang/9507635 欢迎移动开发爱好者交流:我的微信是iwanghang 另外,我打算开始找工作,如果沈阳或周边城市公司有意,也请与我联系. 实现效果如图: 实现代码如下: NetMusicListFragment如下: package com.iwangh

vue自动完成搜索功能的数据请求处理

在现在的互联网世界里,自动完成的搜索功能是一个很常见的功能.比如百度.搜狗.360搜索 ... 功能描述一下大概是这个样子的:有一个搜索框,用户在里面输入要查询的条件,系统会“智能”判断用户输完了,然后自动根据条件去搜索相关的数据返回给用户. 网上这个自动完成的插件很多,实现自动完成功能也不复杂,特别是像vue.angularjs.react这类可以实现双向绑定的库出现以后,实现就更方便了.本文不讲自动完成功能的实现,而是介绍自动完成功能后续数据的请求该如何考虑,主要要处理下面两个问题. 问题1

[转]使用Google地图API搜索功能

使用Google地图API搜索功能 由于工作关系,最近这两天研究了下Google地图API,要实现地图位置搜索功能,显示搜索结果并能在地图上标记下来,刚开始还考虑使用51ditu,出于搜索关键字分词等方面考虑,最后还是决定使用Google地图,一直也都是那么的崇拜谷歌的大神,这次就来体验一翻~ 在Google地图标记定位到一点 刚开始是实现在Google地图上定位一点的功能,API接口里GMap2类有一个setCenter(center:GLatLng, zoom?:Number, type?:

网站安全狗”响应内容保护“网页错误返回页面优化功能介绍

网站安全狗最新版本(主程序版本号:3.2.08157)在“资源保护”模块多了一个功能叫做:响应内容保护.如下图所示: <ignore_js_op> 该模块的主要功能是,当我们访问网站时,不合理的访问,或者网站自身的问题,会出现各种的错误返回页面.从安全的角度上讲,这就可以给攻击者提供判断的依据,为了防止这种情况,网站安全狗对网页错误的返回页面做了优化处理,并将此资源进行了回收利用,加入了百度推广的相关广告信息. <ignore_js_op> 该页面的推广信息为您搜索的相关类似信息.

整理推荐比较好用的具有书签搜索功能的chrome插件

平时在整理学习chrome插件的过程中,经常会去试用各种大家推荐的插件.在去年我们的一篇文章:推荐六款好用的书签收藏夹剪藏型管理插件.这里面介绍的是收藏书签的插件.而随着我们使用chrome越来越频繁,chrome中存在着大量的书签,而用户想要从书签中来获取有用的内容,就会变得越来越困难.所以一款具有chrome搜索功能的插件非常的重要.今天我们要给他们推荐介绍的是有搜索chrome书签的插件. No1.Holmes:福尔摩斯书签检索框 Holmes是一款书签搜索工具,当你的书签堆满山的时候,还