sql过滤html函数(SQL查询结果过滤HTML字符)方法
作者:本站编辑
发布时间:2018-04-01
来源:佚名
点击数:
做开发时,有时查询出数据库结果,但带HTML,而客户不需要这些无意义的字符,有没有解决方法?
在逐浪CMS中,我们默认集成了一个SQL函数方法,方法名:
[ZL_StripeTrimstr]
其查询方法是:
select top 20 dbo.ZL_StripeTrimstr(content) 简介 from ZL_C_Article
通过这个方法,存在数据库中的HTML经[ZL_StripeTrimstr]函数查出来后,得出结果为纯HTML文本,这样可以用于简介等展示模块中使用。
结果如下图所示:
以下为完整的思路逻辑。
首先我们创建一个函数:
Create Function [dbo].[f_trimstr](@str nvarchar(4000))
returns nvarchar(4000)
AS
begin
declare @d int;
declare @dd int;
declare @sumstr nvarchar(4000);
while (Charindex('<',@str)!=0 and Charindex('>',@str)!=0)
begin
set @d = Charindex('<',@str);
set @dd = Charindex('>',@str);
set @sumstr = Substring(@str,1,@d-1);
set @str = Substring(@str,@dd+1,len(@str));
set @str = @sumstr+@str;
end
set @str=Replace(@str,' ','')
return @str;
end
然后在查询中引用它,其基本格式是:
select top 20 dbo.f_trimstr(content) 企业简介 from ST_lxs
如在逐浪CMS中则为:
select top 20 dbo.f_trimstr(content) 简介 from ZL_C_Article