dedecms sql标签中调用其它变量值功能修改

织梦cms的代码除了自身的功能以外在模板标签调用以及自定义模型等方面确实很差,下面是是用sql标签调用匹配其他参数的代码修改:

一般在文章页使用sql标签匹配另外一个参数我们会按照以下这样写,但结果输出为空:

{dede:sql sql="select title from `dede_archives` where `title` like '%~pername~%'" db='default'}

<li><a href='[field:arcurl/]'>[field:title/]</a> </li>

{/dede:sql}
dedecms模板标签默认编译的结果就是select title from `dede_archives` where `title` like '~%pername%~' 并没有传递进来pername的参数。

此时我们需要对织梦cms的函数进行以下修改:

$sql = str_replace($conditions[0][$key], "'".addslashes($refObj->Fields[$value])."'", $sql);

修改为:(只需把引号去掉就可以实现了)

$sql = str_replace($conditions[0][$key], addslashes($refObj->Fields[$value]), $sql);

或者我们可以复制一份include/taglib/sql.lib.php重命名为likesql.lib.php并将对应代码修改,这样我们可以不影响{dede:sql sql=""}标签而用新的{dede:likesql sql=""}来实现模糊搜索。

版权免责声明

① 本站VIP源码资源永久免费下载 www.wayu.cn
② 本网站资源来源于网络收集,如有侵权,请联系站长进行删除处理。
③ 分享目的仅供大家学习和交流,请不要用于商业用途,否则后果自负。
④ 如果你有源码需要出售,可以联系小编,或者点击 投稿
⑤ 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解。
⑥ 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需。
⑦ 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。
⑧ 网站资源不做任何二次加密和授权后门(原版加密除外)

评论0

请先

今日开通包年,永久vip 半价优惠,有需要的请联系在线客服。
没有账号? 忘记密码?