活着的死人 发表于 2015-1-16 22:13:00

ASP教程之超长字符的智能分页:撑持HTML

ASP是依赖组件的,能访问数据库的组件好多就有好多种,再有就是你微软的工具可是什么都要收钱的啊!分页也许在九九年做游戏网站的时分,就对文章的公布感应贫苦,不外那会儿玩ASP不精。只是迁就用着。在碰到长文件10000字时网页就是一年夜片长了。

客岁,做一个通用的文章与旧事办理体系时,曾写了一段代码,用来分别。如今贴出来。

要申明的是:

我的文章录进界面是基于WEB的HEMLEDITOR,就像这里的ABC代码差未几。以是实践提交的是HTML格局的文本。

对HTML做了响应的处置,不会由HTML代码中切开。

这里另外一位兄弟曾宣布过一个,道理一样,不外我没细心看过,不知有啥分歧。


代码以下:
--------------------------------------
RequestFormItem
I_Forder=Request.Form("I_Folder")
I_Topic=Request.Form("I_Topic")
I_Title=htmlencode(Request.Form("I_Title"))
I_Body=Request.Form("body")
I_Source=Request.Form("I_Source")
I_Keyword=htmlencode(Request.Form("I_Keyword"))
I_ISHOT=request.form("ishot")
ifi_ishot=""theni_ishot="N"
i_ispic=request.form("ispic")
ifi_ispic=""theni_ispic="N"
i_pic=request.form("InsertImage")
i_body=replace(i_body,"contentEditable=true","contentEditable=false")

CheckInput
......

GetPages,B=Body
B_Len=Len(I_Body)
B_Pages=1
T=Temp
T_Loop=true

DoWhileT_Loop这里loop屡次,每4000分一页,算出页码并到场库。
IfB_Len>4000then
N_Body=Left(I_Body,4000)N=New
If"<P"inN_Body,Else">"inN_Body
IfInstrrev(N_Body,"<P")>0and(Len(N_Body)-Instrrev(N_Body,"<P"))<400then
N_Body=Left(N_Body,InstrRev(N_Body,"<P")-1)
elseifInstrrev(N_Body,"  ")>0and(Len(N_Body)-Instrrev(N_Body,"  "))<400then
N_Body=Left(N_Body,InstrRev(N_Body,"  ")-1)
ElseIfInstrrev(N_Body,"。")>0and(Len(N_Body)-Instrrev(N_Body,"。"))<400then
N_Body=Left(N_Body,InstrRev(N_Body,"。"))
ElseIfInstrrev(N_Body,";")>0and(Len(N_Body)-Instrrev(N_Body,";"))<400then
N_Body=Left(N_Body,InstrRev(N_Body,";"))
elseifInstrrev(N_Body,",")>0and(Len(N_Body)-Instrrev(N_Body,","))<400then
N_Body=Left(N_Body,InstrRev(N_Body,","))
elseifInstrrev(N_Body,".")>0and(Len(N_Body)-Instrrev(N_Body,"."))<400then
N_Body=Left(N_Body,InstrRev(N_Body,"."))
endif
endif
EndIf
EndIf
endif
Endif

N_Len=Len(N_Body)
I_Body=Mid(I_Body,N_Len+1)
B_Len=Len(I_Body)

Else
N_Body=I_Body
T_Loop=false
EndIf


Addtodatabase
Exec_prc_Content_InsI_Forder,I_Topic,I_Title,I_Source,N_Body,i_ispic,i_pic,i_ishot,I_Keyword,B_Pages

这里一个function,你能够本人处置,归正了局有两个,一个是body,一个是b_pages,就是页码。


B_Pages=B_Pages+1

Loop


%>

<html>

<head>
<metaname="GENERATOR"content="MicrosoftFrontPage5.0">
<metaname="ProgId"content="FrontPage.Editor.Document">
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title>新建网页1</title>
<linkrel="stylesheet"type="text/css"href="../CSS/default.css">
</head>

<body>

<divalign="center">
<center>

<tableborder=1width="300"height="128"bordercolor="#000000"cellspacing="0"cellpadding="0"style="border-collapse:collapse"><tr>
<tdbgcolor="#DEDBD6"height="31">
录进乐成</td></tr><tr><tdheight="96">
<palign="center">此文章共分<%=B_Pages-1%>页
</td></tr></table>


</center>
</div>
<script>
top.main_top.location.reload();
</script>

</body>对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。

乐观 发表于 2015-1-18 23:18:24

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

飘飘悠悠 发表于 2015-1-26 11:42:55

最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。

第二个灵魂 发表于 2015-2-4 15:11:40

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:

冷月葬花魂 发表于 2015-2-10 02:40:27

跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组

分手快乐 发表于 2015-2-28 16:23:25

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。

变相怪杰 发表于 2015-3-10 03:36:56

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

兰色精灵 发表于 2015-3-17 04:12:06

先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习

再见西城 发表于 2015-3-23 19:48:10

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
页: [1]
查看完整版本: ASP教程之超长字符的智能分页:撑持HTML