webForumDet fria alternativet

Skapa funktion eller annat smart

ASP

5 svar · 386 visningar · startad av devotion

Medlem sedan jan. 20013 582 inlägg
Frågan#1

Hej
Jag har följande kod för att logga data:

	'Block för loggning av redigering av artiklar
	If request.cookies("Task")("articleLog") <> "" then
		sArticleLog = request.cookies("Task")("articleLog")
		sLogMessage = dLogDate & "	Artiklar har redigerats i UppdragNu Intranät	/" & sInitials
		
		sSQL = "UPDATE tblTask Set Log = Log & '" & vbCrLf & sLogMessage & "' Where Id = " & iTaskId
		objConn.Execute sSQL,, 128
		
		response.cookies("Task")("articleLog") = ""
	End If

	'Block för loggning av redigering av Uppdrag
	If request.cookies("Task")("taskLog") <> "" then
		sArticleLog = request.cookies("Task")("taskLog")
		sLogMessage = dLogDate & "	Uppdraget har redigerats i UppdragNu Intranät	/" & sInitials
		
		sSQL = "UPDATE tblTask Set Log = Log & '" & vbCrLf & sLogMessage & "' Where Id = " & iTaskId
		objConn.Execute sSQL,, 128
		
		response.cookies("Task")("taskLog") = ""
	End If

	'Block för loggning av redigering av tid
	If request.cookies("Task")("timeLog") <> "" then
		sArticleLog = request.cookies("Task")("timeLog")
		sLogMessage = dLogDate & "	Tider har redigerats i UppdragNu Intranät	/" & sInitials
		
		sSQL = "UPDATE tblTask Set Log = Log & '" & vbCrLf & sLogMessage & "' Where Id = " & iTaskId
		objConn.Execute sSQL,, 128
		
		response.cookies("Task")("timeLog") = ""
	End If

Det fungerar finfint, men jag tycker det är mycket upprepningar... Kan man göra någon typ av funktion för detta... eller förkorta ner på något listigt sätt..??

Mvh
Henrik

Medlem sedan dec. 19996 721 inlägg
#2

Sätt ihop hela sLogMessage i if-satserna och gör bara en UPDATE

Medlem sedan jan. 20013 582 inlägg
#3

hmmm, hur menar du? :)

Mvh
Henrik

Medlem sedan dec. 19996 721 inlägg
#4

Jo, jag menar att du kan sätta ihop hela logg-strängen, innan du stoppar in den i databasen.

Medlem sedan juni 2002256 inlägg
#5

d.v.s. något i stil med....

Private Sub writeLog()
Dim sLogMessage : sLogMessage = ""

	'Block för loggning av redigering av artiklar
	If request.cookies("Task")("articleLog") <> "" then
		sArticleLog = request.cookies("Task")("articleLog")
		sLogMessage = sLogMessage & dLogDate & "	Artiklar har redigerats i UppdragNu Intranät	/" & sInitials		
		response.cookies("Task")("articleLog") = ""
	End If

	'Block för loggning av redigering av Uppdrag
	If request.cookies("Task")("taskLog") <> "" then
		sArticleLog = request.cookies("Task")("taskLog")
		sLogMessage = sLogMessage & dLogDate & "	Uppdraget har redigerats i UppdragNu Intranät	/" & sInitials
		response.cookies("Task")("taskLog") = ""
	End If

	'Block för loggning av redigering av tid
	If request.cookies("Task")("timeLog") <> "" then
		sArticleLog = request.cookies("Task")("timeLog")
		sLogMessage = sLogMessage & dLogDate & "	Tider har redigerats i UppdragNu Intranät	/" & sInitials
		response.cookies("Task")("timeLog") = ""
	End If

	' Uppdatera loggen
	sSQL = "UPDATE tblTask Set Log = Log & '" & vbCrLf & sLogMessage & "' Where Id = " & iTaskId
	objConn.Execute sSQL,, 128
End Sub

// EDIT:
Användning:

<%
' Innehåll (?)

Call writeLog ' Skriv logg

' Mer innehåll (?)
%>
Medlem sedan jan. 20013 582 inlägg
#6

Hej!

Oj, här ställer man en fråga och så återkommer man inte.... Något jag själv tycker illa om... Sorry! :r

Jag ska kolla upp din lösning Denkan!

Mvh
Henrik

250 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)