- codeproject-forum.zip
- CodeProject-forum
- Common
- forum
- Images
- admin_del.gif
- admin_delall.gif
- admin_modify.gif
- cplogo.gif
- DELETE.GIF
- IND.GIF
- MODIFY.GIF
- NEW.GIF
- news_none.gif
- news_selected.gif
- news_unselected.gif
- RED.GIF
- smiley_biggrin.gif
- smiley_confused.gif
- smiley_cool.gif
- smiley_eek.gif
- smiley_frown.gif
- smiley_mad.gif
- smiley_redface.gif
- smiley_rolleyes.gif
- smiley_smile.gif
- smiley_tongue.gif
- smiley_wink.gif
- t.gif
- WHITE.GIF
- codeproject-asp-forum.zip
- CodeProject-asp-forum
- _vti_cnf
- database
- forum.mdb
- files
- forum
- images
- _vti_cnf
- blind.gif
- t.gif
- blind.gif
- t.gif
- img_forum
- admin_del.gif
- admin_delall.gif
- admin_modify.gif
- ind.gif
- news_none.gif
- news_selected.gif
- news_unselected.gif
- smiley_biggrin.gif
- smiley_frown.gif
- smiley_redface.gif
- smiley_smile.gif
- smiley_wink.gif
- t.gif
- index.html
- codeproject-aspforum-ax.zip
- src
- app
- AspForum.dsw
- AspForum.opt
- common
- foreign
- codeproject-php-forum.zip
- config.inc
- css
- functions.inc
- img_forum
- admin_del.gif
- admin_delall.gif
- admin_modify.gif
- cplogo.gif
- DELETE.GIF
- IND.GIF
- MODIFY.GIF
- NEW.GIF
- news_new.gif
- news_none.gif
- news_selected.gif
- news_unselected.gif
- RED.GIF
- smiley_biggrin.gif
- smiley_confused.gif
- smiley_cool.gif
- smiley_eek.gif
- smiley_frown.gif
- smiley_mad.gif
- smiley_redface.gif
- smiley_rolleyes.gif
- smiley_smile.gif
- smiley_tongue.gif
- smiley_wink.gif
- t.gif
- WHITE.GIF
- index.php
- install.txt
- new.php
- reply.php
|
option explicit
Const PATH = "../database/forum.mdb"
'db connection
dim m_conn
set m_conn = CreateObject("ADODB.Connection")
m_conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" &_
"Persist Security Info=False;" &_
"Data Source=" & PATH
'--------------------------------------
'insert entry
function insert(position, indent, id)
dim rs_insert
set rs_insert = CreateObject("ADODB.Recordset")
rs_insert.Open "SELECT * FROM Article WHERE ForumID = "& forum_id &"AND ID = "&id, m_conn, 2, 3
rs_insert("Position") = position
rs_insert("Indent") = indent
rs_insert.Update
rs_insert.Close
end function
'--------------------------------------
'find position-------------------------
sub countPosition
position = Clng(position)-1
while Len(position) < 6
position = "0" & position
wend
end sub
'--------------------------------------
'insert childs-------------------------
function insertChild(parent_id, indent)
dim x
dim rs_child, sql_child
sql_child= "SELECT * From Article WHERE ForumID = "& forum_id & " AND ParentID =" &parent_id & " ORDER BY Date ASC"
set rs_child = m_Conn.Execute(sql_child)
'gets the position of the parent entry
dim rs_pos, sql_pos
sql_pos= "SELECT * From Article WHERE ForumID = "& forum_id & " AND ID =" &parent_id & " ORDER BY Date DESC"
set rs_pos = m_Conn.Execute(sql_pos)
dim last
'if there are no other childs
if (rs_child.Bof and rs_child.Eof) then
x = "000001"
c_position = position & x
'if there are other childs
else
while not rs_child.Eof
x = CStr(CLng(x)+1)
while Len(x) < 6
x = "0" & x
wend
c_position = rs_pos("position") & "." & x
insert c_position, indent, rs_child("ID")
insertChild rs_child("ID"), indent+1
rs_child.MoveNext
wend
end if
dim c_position
end function
'--------------------------------------
function convert(id)
countPosition
insert position, 0, id
insertChild id, 1
end function
'----------------------------------
' get the forumID---------------------------------
dim rs_forum, sql_forum
sql_forum= "SELECT DISTINCT ForumID From Article"
set rs_forum = m_Conn.Execute(sql_forum)
'-------------------------------------------------
while not rs_forum.Eof
dim position, forum_id
' set "position" to the start
position = "1000000"
forum_id = rs_forum("ForumID")
'get the parent entries of the forum
dim rs, sql
sql= "SELECT * From Article WHERE ForumID = "&forum_id&" AND ParentID = 0 ORDER BY Date ASC"
set rs = m_Conn.Execute(sql)
while not rs.Eof
convert rs("ID")
rs.MoveNext
wend
rs_forum.MoveNext
wend
'----------------------------------------
sub trace( text )
WScript.Echo text & vbCrLf
end sub
trace "Database-Update was successful."
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Chris Maunder is the co-founder of
CodeProject and
ContentLab.com, and has been a prominent figure in the software development community for nearly 30 years. Hailing from Australia, Chris has a background in Mathematics, Astrophysics, Environmental Engineering and Defence Research. His programming endeavours span everything from FORTRAN on Super Computers, C++/MFC on Windows, through to to high-load .NET web applications and Python AI applications on everything from macOS to a Raspberry Pi. Chris is a full-stack developer who is as comfortable with SQL as he is with CSS.
In the late 1990s, he and his business partner David Cunningham recognized the need for a platform that would facilitate knowledge-sharing among developers, leading to the establishment of CodeProject.com in 1999. Chris's expertise in programming and his passion for fostering a collaborative environment have played a pivotal role in the success of CodeProject.com. Over the years, the website has grown into a vibrant community where programmers worldwide can connect, exchange ideas, and find solutions to coding challenges. Chris is a prolific contributor to the developer community through his articles and tutorials, and his latest passion project,
CodeProject.AI.
In addition to his work with CodeProject.com, Chris co-founded ContentLab and DeveloperMedia, two projects focussed on helping companies make their Software Projects a success. Chris's roles included Product Development, Content Creation, Client Satisfaction and Systems Automation.