freemylove 2006-4-18 22:58
[原创]解决DV7.1SP1发表问题
呵呵,懂程序,却不懂推广。
最近想玩个论坛,我已经知道怎么处理可以在最新的动网用火车发表了。
但提个要求,就是想知道的人跟贴并可以和我交换链接或提一个做好论坛的建议,好不好?
别说是威胁,没办法,搞代码搞久了,连宣传推广都不会了,想学些经验。
看如果感兴趣和提建议的人多,我就发出来。
呵呵,都是搞网络的人,不拿着了,我把方法写出来,但点击那么多,回帖才这几个,真寒心。。。
1、发表权限问题
复制bbs中的savepost.asp,将其改一个名字,例如 locoy_savepost.asp
然后用记事本打开 locoy_savepost.asp
查找 Public Sub Save_CheckData()
将它下面的
'注释掉,方便采集后发布
'Chk_Post()
2、有关无法获取论坛分类的修改
修改动网后台模板分页面模板(page_index) 中的界面风格 template.html(0) 复制出来,其中第 113行 189行分别都加上 如下代码,就可以获取真正有效的分类。
title="进入本分类"
然后修改 火车采集中的 登陆发表,找到动网模块,修改 发表地址后缀
/SavePost.asp?Action=snew&boardid=分类ID
为
/locoy_savepost.asp?Action=snew&boardid=分类ID
修改完毕后保存。然后最好重新打开一下火车。就可以了。
至少我用这个,采集几千条也没发现确认权限问题,而不修改的话,几百条是偶尔有几条可以发成功的。
[[i] 本帖最后由 freemylove 于 2006-4-19 11:34 编辑 [/i]]
smallwhite 2006-4-19 02:52
支持楼主,我顶你,希望能发出来
smallwhite 2006-4-19 10:18
楼主怎么还不来发布呢,顶上去
lwjlws 2006-4-19 10:21
没问题啊,我可以跟你交换链接啊![url]http://www.ys68.net[/url]
cjtest 2006-4-19 19:10
先谢谢楼主分享的经验!我有点看不太懂,自己去试试看!
cjtest 2006-4-19 19:42
试了一下,用楼主的办法的确可以,建议加精!
再问一下:“其中第 113行 189行分别都加上 如下代码,就可以获取真正有效的分类。 title="进入本分类" ”这113、189行到底是在哪个,能不能说清楚点,在哪个语句后?
freemylove 2006-4-20 00:24
113行
[code]<div><a href="index.asp?boardid={$boardid}" title="进入本分类"> <xsl:if test="count(../board[@parentid=$boardid]) != 0"><xsl:attribute name="title">有<xsl:value-of select="count(../board[@parentid=$boardid])"/>个下属论坛</xsl:attribute></xsl:if><xsl:value-of select="@boardtype" disable-output-escaping="yes"/></a><xsl:if test="count(../board[@parentid=$boardid]) !=0"><a><xsl:attribute name="onmouseover">showmenu(event,BoardJumpList(<xsl:value-of select="@boardid"/>,1),0);</xsl:attribute>(<xsl:value-of select="count(../board[@parentid=$boardid])"/>)</a></xsl:if></div>[/code]
189行
[code] <div><a href="index.asp?boardid={$boardid}" title="进入本分类"> <xsl:if test="count(../board[@parentid=$boardid]) != 0"><xsl:attribute name="title">有<xsl:value-of select="count(../board[@parentid=$boardid])"/>个下属论坛</xsl:attribute></xsl:if><xsl:value-of select="@boardtype" disable-output-escaping="yes"/></a><xsl:if test="count(../board[@parentid=$boardid]) !=0"><a><xsl:attribute name="onmouseover">showmenu(event,BoardJumpList(<xsl:value-of select="@boardid"/>,1),0);</xsl:attribute>(<xsl:value-of select="count(../board[@parentid=$boardid])"/>)</a></xsl:if></div>[/code]
3kmm 2006-4-21 11:25
......将其改一个名字,例如 locoy_savepost.asp 然后用记事本打开 locoy_savepost.asp 查找 Public Sub Save_CheckData() 将它下面的 '注释掉,方便采集后发布 'Chk_Post()
——————————————————————————————————
'检查数据,提取数据,获得贴子数据表名等。
Public Sub Save_CheckData()
Chk_Post()
CheckfromScript()
'把提交的数据保存到session
Content = CheckAlipay()
isAlipayTopic = 2
If Content = "" Then
Content = Dvbbs.Checkstr(Request.Form("body"))
isAlipayTopic = 0
End If
If InStr(Content,"[/payto]") > 0 And InStr(Content,"[payto]") > 0 And InStr(Content,"(/seller)") > 0 And InStr(Content,"(seller)") > 0 Then isAlipayTopic = 2
Dvbbs.UserSession.documentElement.selectSingleNode("userinfo").attributes.setNamedItem(Dvbbs.UserSession.createNode(2,"postdata","")).text= Request.Form("body")
If Dvbbs.Board_Setting(4) = "1" Then
If Not Dvbbs.CodeIsTrue() Then
Response.redirect "showerr.asp?ErrCodes=<li>验证码校验失败,2秒后自动返回上一页面。&action=OtherErr&autoreload=1"
End If
End If
Chk_PostType()
1没有看明白,哪个地方算是注释啊?
2改名字后还和以前的文件都放在里面吗?
希望得到您的帮助,感激~~
cjtest 2006-4-21 20:35
[quote]原帖由 [i]3kmm[/i] 于 2006-4-21 11:25 发表<br>
......将其改一个名字,例如 locoy_savepost.asp 然后用记事本打开 locoy_savepost.asp 查找 Public Sub Save_CheckData() 将它下面的 '注释掉,方便采集后发布 'Chk_Post() <br>
<br>
———————————————— ... [/quote]<br>
<br>
原来savepost.asp中的语句是:<br>
……<br>
Public Sub Save_CheckData() <br>
Chk_Post()<br>
……<br>
<br>
在Chk_Post()前加个单撇号变成如下即可:<br>
……<br>
Public Sub Save_CheckData() <br>
[color=Red]'Chk_Post()[/color]<br>
……<br>
<br>
其实把Chk_Post()删除掉也行的!<br>
keile 2006-4-22 22:21
回复 #1 freemylove 的帖子
一点看不懂,太复杂了。。。
freemylove 2006-4-22 23:26
我不知道您是怎么操作的,至少接触过的人都是成功了的,你有没有建完模块后关掉火车重进啊。
ffcz 2006-4-23 00:07
我试过你这种办法,把save的文件做了修改,发贴的成功率在85%左右(本地ACCESS测试)。
liao365 2006-4-23 01:04
将发现时间设在12000ms,单线程,可采集到80%左右,不知哪位还有更好的经验,请放出过共享一下,谢谢!