webForumDet fria alternativet

clsArray - bugg och hjälptråden .....

ASPur ASP

2 svar · 408 visningar · startad av PatrikB

Medlem sedan mars 20002 836 inlägg
Frågan#1

.... för scriptet som kan hittas här.

Som sagt, den obligatoriska tråden för script upplagda på wF Script avdelningen.

Tips, buggar och hjälp postas lämpligen här så får vi allt samlat på ett o samma ställe så att fler kan hitta information om detta script på ett lätt och snabbt sätt :e

cya,
PatrikB

------------------
-=* IF there is a wrong way to do something, then someone will do it *=-

[Redigerat av PatrikB den 26 dec 2001]

Medlem sedan mars 20002 836 inlägg
#2

Sitter man här på NyÅr o kodar lite granna efter att man har käkat lite gott med familjen, ungarna har lagt sig och lugnet har börjat att falla sig med en kall bredvid sig.

Har uppdaterat clsArray med en ny metod:
.Random(iData)

vilket returnerar en ny array bestående av iData-antal slumpvis valda index från "moder arrayen".
Funkar för både 1 och 2-dimensionella arrayer.

Skulle kunna användas för att tex slumpa ut n-antal av bilder i en viss katalog, citat från databasen etc.

cya and a happy new year,
PatrikB - som ska tillbaka o vara lite social *ler*

------------------
-=* IF there is a wrong way to do something, then someone will do it *=-

Medlem sedan mars 20002 836 inlägg
#3

Här kommer ett litet exempel på hur man tex kan använda sig av VB Script Classen - clsArray:

FORUM KOD:

Skapa en ny klass och inkludera clsArray.asp (de båda klass-filerna ska ligga i samma katalog):

clsForumCode.asp
================

Class clsForumCode
	Private objArray

	Public Sub AddCode(ByVal sCode, ByVal sReplace)
		'## -- create a new index in the array holding new smiley with replacement -
		objArray.AddNew
			'## -- save smiley and replacement --
			objArray.Update sCode, "", 0
			objArray.Update sReplace, "", 1
	End Sub

	Public Function DoCode(ByVal sString)
		'## -- check if any argument is given, if not exit --
		If Len(sString) = 0 OR IsNull(sString) Then Exit Function

		Dim varSmiley
		Dim intArrLength, N
		Dim strReplace, strReplaceWith

		'## -- get array with all smileys and replacements --
		varSmiley = objArray.GetArray()

		'## -- total index of array --
		intArrLength = UBound(varSmiley,2)

		'## -- loop through the array and replace all smileys in sString --
		For N = 0 TO intArrLength
			'## -- smiley code --
			strReplace = varSmiley(0,N)

			'## -- replace smiley code with this replacement --
			strReplaceWith = varSmiley(1,N)

			'## -- do the replacement --
			sString = Replace(sString, strReplace, strReplaceWith)
		Next

		'## -- return string with smileys --
		DoCode = sString
	End Function

	'## -- set default variables and objects --
	Private Sub Class_Initialize()
		'## -- create a new array object --
		Set objArray = New clsArray
			With objArray
				'## -- set the type of array. (2-dimensional) --
				.ArrayType = 2

				'## -- array positions in every array index --
				.Positions = 1 '## -- 2 positions. start count pos at 0 --

				'## -- create the array --
				.SetArray ""
			End With
	End Sub

	'## -- clean up --
	Private Sub Class_Terminate()
		Set objArray = Nothing
	End Sub

End Class
%>
<!--#INCLUDE FILE="clsArray.asp"-->

Sedan din sida där du vill köra denna forum kod:
sida.asp
========

<%
Option Explicit

Response.Buffer = True

Dim objForumCode
Dim strString

Set objForumCode = New clsForumCode
	objForumCode.AddCode "[:)]", "FLIN GUBBE"
	objForumCode.AddCode "[:(]", "SUR GUBBE"
	objForumCode.AddCode "[ b]", "<B>"
	objForumCode.AddCode "[ /b]", "</B>"

	strString = "Detta är en [ b][:)][ /b] och detta är en [ b][:(][ /b]"

	Response.Write objForumCode.DoCode(strString)

Set objForumCode = Nothing

Hoppas ni får mer nöje av denna lilla klass.

cya,
PatrikB

------------------
-=* IF there is a wrong way to do something, then someone will do it *=-

[Redigerat av PatrikB den 03 jan 2002]

130 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)