公告 公告:  祝大家在虎年里,虎虎生威!生意红火,事业有成!当然,还有爱情大丰收 *__*
CSBlogV2.11问题收集与信息反馈   ;   CSCMSV1正式上线公测
CSWave系列官方QQ群:24301472(最新版的一般都先发布在共享里哟) 。
[ 一线风 | 2008-12-25 9:42:13 | 阅读: 1189 | 分类: 程序开发 ]

<xsl:param> 元素
--------------------------------------------------------------------------------
定义与用法
<xsl:param>元素被用来声明一个局部或者全局的参数。
说明:如果声明的是一个高级(top-level)的元素那么参数是全局的,如果在一个样规中声
明那么是局部的。

<xsl:variable> 元素(xsl的variable是常量不能再改变)
--------------------------------------------------------------------------------
定义与用法
<xsl:variable>元素被用来声明一个局部或者全局的变量。
说明:当声明为高级(top-level)元素时,变量是全局的,当在一个template 中声明时,作
为局部变量。
说明:一旦您设置了一个变量的值,您就不能修改这个值!
提示:您可以通过增加<xsl:variable>的内容或者用select 属性来设置变量值!

新窗口 阅读全文及评论...

[ 一线风 | 2008-3-24 17:45:45 | 阅读: 1429 | 分类: 程序开发 ]

   合理的设计索引,正确的使用索引.

    大家注意一点,这个LX_STUDENTINFO索引,是四个索引字段,而他们的顺序studycenternumber,studentnumber,studentname,studentcrtificatenumber,在数据库设计中,如果查询采用的第一个字段和第二个字段组合,则该索引有效;如果查询采用第一个、第二个和第三个字段组合,该索引也有效;而如果第一个和第三个,或第四个组合,则该索引是无效的,等同的效果仍是在没有索引的数据库中进行查询。也就是说建立的索引中的字段,在查询使用时,不能隔字段使用。

    另外,索引中涉及到字段的顺序也会影响查询的性能,如果一个索引包含两个字段A1和A2,那么在查询时,一定要严格按索引中这两个字段的顺序设计查询,比如:select * from a where A1='A' and A2='B'。而如果程序员写成了select * from a where A2='B' and A1='A'的话,虽然不影响程序正常使用,但会增加数据库的压力,并且查询效能会降低。(注:这个,我觉得Mssql好像是能自动优化的)

新窗口 阅读全文及评论...

[ 一线风 | 2008-3-10 14:18:54 | 阅读: 1152 | 分类: 程序开发 ]

使用存储过程有如下好处:

1.         使用存储过程可以对所执行的SQL语句进行封装,在接口保持不变的情况下不影响调用程序。

2.         最大限度的重用已缓存的执行计划。

3.         减少网络流量。

4.         提供更好的数据库安全控制,防止直接对表的操作。

存储过程的编译占用CPU,因此我们应该防止存储过程不必要的重新编译。
正常的编译发生于:

1.         所引用的表中大部分的数据发生了的更改,导致统计信息变化过大。

2.         所引用的表的架构被修改,包括添加或取消约束、默认值或规则。

3.         明确使用WITH RECOMPILE强制每次执行过程时重新编译或sp_recompile使用过程缓存无效。

4.         由于服务器内存不足或长期不使用,使缓存过程被清除。

新窗口 阅读全文及评论...

[ 一线风 | 2008-2-27 18:28:41 | 阅读: 946 | 分类: 程序开发 ]

开源世界真是太奇妙了,虽然不排除卑鄙无耻的直接盗用并贯为自己的产品,但开源可以无私到随便你怎样用。

接触开源有很长的一段时间了,先是学习别人的,然后还参与了开源,在sf.net上,我主持和参与了数个开源项目,当然,都不是大型的项目,只是尝试一下。

我所关注的开源项目方面很多,每方面都有很多优秀的作品,我将会在接下来的系列随笔中介绍,这次介绍数据库。

这个星球上的数据库实在不胜枚举,这里只列一些我接触过的常见的。

新窗口 阅读全文及评论...

[ 一线风 | 2008-2-25 12:49:15 | 阅读: 1281 | 分类: 程序开发 ]

了解 XML 空白字符的概念并掌握如何避免与之相关的问题的技巧。

很多时候,您可能都没注意到,在 XML 中所做的更改影响着您访问 XML 文档中数据的方式。例如:

<Author><FirstName>John</FirstName><LastName>Smith</LastName></Author>

完全不同于

<Author>
<FirstName>John</FirstName>
<LastName>Smith</LastName>
</Author>

新窗口 阅读全文及评论...

[ 一线风 | 2008-2-2 16:33:15 | 阅读: 1053 | 分类: 程序开发 ]

随着 B/S 模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于这个行业的入门门槛不高,程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的 SQL Injection,即SQL注入。

新窗口 阅读全文及评论...

[ 一线风 | 2008-1-30 10:14:28 | 阅读: 1200 | 分类: 程序开发 ]

大家存在5点误区:
1、sql注入比较难防,需要替换select,delete等一打字符
2、忽略DropDownList传来的东西
3、access比sqlserver不安全
4、网站没有显示出错信息就说明网站是安全的
5、忽略post提交的信息

新窗口 阅读全文及评论...

[ 一线风 | 2008-1-29 16:15:10 | 阅读: 1065 | 分类: 程序开发 ]

Iconspedia是一个专门的图标下载网站,和其他图标下载网站不同的是,Iconspedia是允许匿名上传和下载图标的。每个人都可以成为图标的贡献者。Iconspedia上的图标都非常Web2.0,非常漂亮。提供背景透明的PNG和ico格式下载,图标大小从32*32至256*256不等。

Iconspedia-下载和分享Web2.0图标

新窗口 阅读全文及评论...

[ 一线风 | 2006-11-1 10:14:24 | 阅读: 1917 | 分类: 程序开发 ]
自从NB论坛系统发布后,很多人都一直在问我一些与论坛性能优化相关的问题,这两天抽了点时间,整理了一下思路,把过去几年的经验都奉献给大家,就是算是庆祝我进入编程领域十一周年献给大家的一份礼物吧!

       

        [序言]

        在贴子数上百万的论坛系统中,性能是非常重要的指标,缺少优化的论坛,性能低下是不用说的,轻则拖慢服务器,重则破坏数据一致性,死锁、超时频繁发生,

甚至引起系统崩溃,导致用户的流失。所以,对论坛的优化是非常必要的,一般对ASP程序优化方法有:优化数据库结构、优化算法、将常用又不经常变动的数据存入

Application,其它的一些方法经试验证实对系统的作用很小,不列入此文讨论范围。

新窗口 阅读全文及评论...

[ 一线风 | 2006-4-6 10:50:22 | 阅读: 2330 | 分类: 程序开发 ]
[Code]
<%
'---------------------------------  Author  information  -------------------------------------------------------------
'File                        :                Function.asp
'Version                :                0.10.20060404b
'Revision                :                2006-4-4        14:08:14
'Author                :                Atwind(Atwind.Max    or      一线风)
'Content                :                Email:Itwind@163.com      BLoghttp://max.69sea.com      QQ:478779122       
'Company        :                Web: Http://www.cmfu.com          Tel:50504740-5060
'-----------------------------------------------------------------------------------------------------------------
'----有返回函数的类型的相关函数集合
'
''~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        '''----------------------------------------------------------------↓转换字符串为数字,无法转换时结果为0
        Public  Function  GetNum(iStr)               
                Dim  s
                s=Trim(""&iStr)       
                If  IsNumeric(s)  Then  GetNum=Clng(s)  Else  GetNum=0  End  If
        End  Function

        '''----------------------------------------------------------------↓过虑用户提交的Get类型字符串
        Public  Function  GetStr(Str)                               
                If  Isnull(Str)  Then
                        GetStr  =  ""
                        Exit  Function 
                End  If
                Str  =  Replace(Str,Chr(0),"")
                GetStr  =  Replace(Str,"'","''")
        End  Function

        '''----------------------------------------------------------------↓  获得用户IP       
        Public          Function  GetIp()                                       
                dim  vip
                vip=Request.ServerVariables("http_x_forwarded_for")
                if  vip=""  or  Isnull(vip)  then        vip=Request.ServerVariables("remote_addr")
                GetIp=vip
        End  Function

        '''----------------------------------------------------------------↓过滤26个引起搜索溢出的日文片假名
        Public  Function  EncodeJP(StrHTML)
                If  StrHTML<>""  Then
                        StrHTML=Trim(StrHTML)
                        StrHTML=Replace(StrHTML,"ガ","&#12460;")
                        StrHTML=Replace(StrHTML,"ギ","&#12462;")
                        StrHTML=Replace(StrHTML,"グ","&#12450;")
                        StrHTML=Replace(StrHTML,"ゲ","&#12466;")
                        StrHTML=Replace(StrHTML,"ゴ","&#12468;")
                        StrHTML=Replace(StrHTML,"ザ","&#12470;")
                        StrHTML=Replace(StrHTML,"ジ","&#12472;")
                        StrHTML=Replace(StrHTML,"ズ","&#12474;")
                        StrHTML=Replace(StrHTML,"ゼ","&#12476;")
                        StrHTML=Replace(StrHTML,"ゾ","&#12478;")
                        StrHTML=Replace(StrHTML,"ダ","&#12480;")
                        StrHTML=Replace(StrHTML,"ヂ","&#12482;")
                        StrHTML=Replace(StrHTML,"ヅ","&#12485;")
                        StrHTML=Replace(StrHTML,"デ","&#12487;")
                        StrHTML=Replace(StrHTML,"ド","&#12489;")
                        StrHTML=Replace(StrHTML,"バ","&#12496;")
                        StrHTML=Replace(StrHTML,"パ","&#12497;")
                        StrHTML=Replace(StrHTML,"ビ","&#12499;")
                        StrHTML=Replace(StrHTML,"ピ","&#12500;")
                        StrHTML=Replace(StrHTML,"ブ","&#12502;")
                        StrHTML=Replace(StrHTML,"ブ","&#12502;")
                        StrHTML=Replace(StrHTML,"プ","&#12503;")
                        StrHTML=Replace(StrHTML,"ベ","&#12505;")
                        StrHTML=Replace(StrHTML,"ペ","&#12506;")
                        StrHTML=Replace(StrHTML,"ボ","&#12508;")
                        StrHTML=Replace(StrHTML,"ポ","&#12509;")
                        StrHTML=Replace(StrHTML,"ヴ","&#12532;")
                End  If
                EncodeJP=StrHTML
        End  Function

        '''----------------------------------------------------------------↓过滤HTML/UBB以纯文本显示,带长度参数
        Public  Function  FormatHTML(HtmCode,HtmLen)
                If  HtmCode<>""  Then
                        Dim  RegX
                        Set  RegX  =  new  RegExp
                        RegX.IgnoreCase  =  True
                        RegX.Global  =  True
                        RegX.Pattern  =  "<(a|select|option|script|style|title)(.*?)>((.|  )*?)</(a|select|option|script|style|title)>"
                        HtmCode  =  RegX.Replace(HtmCode,  "  ")
                        RegX.Pattern  =  "&(lt|gt|nbsp|quot|copy);"
                        HtmCode  =  RegX.Replace(HtmCode,  "  ")
                        RegX.Pattern  =  "<[^>]*>"
                        HtmCode  =  RegX.Replace(HtmCode,  "")
                        RegX.Pattern  =  "\[(img)(.*?)\]((.|  )*?)\[/(img)\]"
                        HtmCode  =  RegX.Replace(HtmCode,  "  ")
                        RegX.Pattern  =  "\[[^\]]*\]"
                        HtmCode  =  RegX.Replace(HtmCode,  "  ")
                        HtmCode  =  Replace(HtmCode,Chr(13)&Chr(10),"  ")
                        RegX.Pattern  =  "^http://[^  <>]+)"
                        HtmCode  =  RegX.Replace(HtmCode,  "")
                        RegX.Pattern  =  "( |~|~|`|`)"
                        HtmCode  =  RegX.Replace(HtmCode,  "  ")
                        Set  RegX=Nothing
                        FormatHTML  =  CutStr(HtmCode,HtmLen)
                Else
                        FormatHTML  =  ""
                End  If
        End  Function

        '''----------------------------------------------------------------↓过滤HTML左右标签
        Public  Function  UnHTML(Code)
                UnHTML  =  RTrim(Code)
                If  UnHTML<>Empty  Then
                        UnHTML=Replace(UnHTML,"<","&lt;")
                        UnHTML=Replace(UnHTML,">","&gt;")
                End  If
        End  Function

        '''----------------------------------------------------------------↓截取字符串特定长度
        Public  Function  CutStr(Str,StrLen)
                CutStr  =  Trim(Str)
                If  Len(CutStr)>=StrLen  Then  CutStr=Left(CutStr,StrLen-1)&"..."
        End  Function

        '''----------------------------------------------------------------↓转换数据库数据为发布时的格式
        Public  Function  HTMLEncode(str)       
                If  Isnull(str)  then  Exit  Function
                str  =  Replace(str,CHR(38),"&amp;")                '&
                str  =  Replace(str,CHR(32),"&nbsp;  ")        '&nbsp;
                str  =  Replace(str,CHR(39),"&#39;")
                str  =  Replace(str,CHR(36),"&#36;")
                str  =  Replace(str,  CHR(34),"&#34;")
                str  =  Replace(str,">","&gt;")
                str  =  Replace(str,"<","&lt;")
                str  =  Replace(str,  CHR(13),  "")
                str  =  Replace(str,  CHR(9),  "&nbsp;  &nbsp;  &nbsp;  &nbsp;  ")                '&TAB
                str  =  Replace(str,  CHR(10)  &  CHR(10),  "</P><P>  ")
                str  =  Replace(str,  CHR(10),  "<BR>  ")
                HTMLEncode  =  str
        End  Function

        '''----------------------------------------------------------------↓简化条件判断
        Public  Function  IIf(ByVal  blnBool,ByVal  strStr1,ByVal  strStr2)
                If  blnBool  Then  IIf=strStr1        Else  IIf=strStr2  End  If
        End  Function

        '''----------------------------------------------------------------↓通过时返回用户名,否则返回为空,传参过虑为Chr1|Chr2|Chr3
        Public  Function  IsPass(ByVal  str,ByVal  arr)
                Dim  s,arrChr,i
                s=str
                arrChr=Split(arr,"|")
                For  i=0  to  Ubound(arrChr)
                        If  Instr(s,arrChr(i))>0  Then 
                                Ispass="" 
                                Exit  Function
                        End  If
                Next
                IsPass=s
        End  Function

%>
[/Code]

新窗口 阅读全文及评论...