您现在的位置是:首页 > 网站建设 > 网站建设
织梦dede:sql like模糊查询当前%~title~% 多出,号的问题
来源:村仔SEO博客 2020-07-07 人已围观
简介:在织梦中我们常会用到{dede:sql},在sql使用变量经常也会用到。比如我们要在dede_archives表中查询某个关键词与当前标题做匹配的时候,如变量为title,那么语句如下: {dede:sql sql=SELECT *
在织梦中我们常会用到{dede:sql},在sql使用变量经常也会用到。比如我们要在dede_archives表中查询某个关键词与当前标题做匹配的时候,如变量为title,那么语句如下:
{dede:sql sql="SELECT * FROM dede_archives WHERE tag=~title~"}
这种是比较简单和常用的方式。但在使用过程中我发现,有时会遇到这样一种状况,即模糊搜索匹配的标题(sql使用like和%)。
按照上面来说应该这样写:
{dede:sql sql="SELECT * FROM dede_archives WHERE title like '%~title~%' "}
但是这样报错了,编译的结果是select * from dede_archives where title like '%'$title'% 造成sql语句错误。多出来了' 号。后来发现是sql语句的规则问题,所以就要修改{sql.lib.php} 的标签。
以下为修改方法:
将48行中
$sql = str_replace($conditions[0][$key], "'".addslashes($refObj->Fields[$value])."'", $sql);
修改为:
$sql = str_replace($conditions[0][$key],addslashes($refObj->Fields[$value]), $sql);
修改完成后把该文件上传到 include/taglib/ 目录下面即可。
最后的调用标签改为:{dede:sql sql="" }
{dede:sql sql="SELECT * FROM `dede_archives` WHERE `title` like '%~title~%' "}
以上就是织梦dede:sql like模糊查询当前%~title~% 多出,号的问题的全部内容,希望对大家的学习有所帮助,也希望大家多多支持村仔SEO。
相关文章
随机博文
网站p、div标签内长英文自动换行&长中文不换行
在css中 div,p,h标签等遇到连续的大段英文和数字时候,并不会按照正常情况下自动随盒子宽度限制而自动换行 长英...阿里云ECS服务器一键安装宝塔控制面板教程
短短几年的时间,我们可以看到阿里云的壮大,只要涉及云计算市场的产品阿里云都有在涉足。对于我们常见选择的...织梦留言表单导出excel表格教学
1、/dede/templets/diy_main.htm 找到 前台预览/a 在它的下面加入一行 a href=diy_list.php?action=exceldiyid={dede:field.diyid/} target=_bla...织梦调用相关文章likearticle附加自定义字段
织梦非常灵活,可以根据关键词、文章标题调用文章,以提高内容之间的相关度,提高页面权重。这篇文章主要介绍...织梦首页列表页调用TAG标签及添加TAG超链接
dedecms v5.7版本: 直接使用标签: [field:id function=GetTags(@me)/] ,就可以调用出来了 只不过不带连接的,如果需要连接,请...织梦搜索页面无法调用自定义字段的方法
Dedecms织梦搜索页面无法调用自定义字段的方法。在做产品或者什么的时候,搜索页无法调用附加表的字段。所以就要...Linux云服务器安装WDCP面板教程
购买服务器之后,选择了操作系统就要为网站搭建环境,不然网站无法在服务器上面正常运行,而这边我们常用的则...织梦dede:sql调取文章
一、数据库通过自定义字段调取文章 {dede:sql sql=SELECT * FROM dede_archives WHERE title LIKE %~shorttitle~%} lia href=[field:id runphp=y...
文章评论
- 全部评论(0)
