Några frågor om funktioner och include?

ASP

13 svar · 259 visningar · startad av Janspeed

Medlem sedan jan. 2001510 inlägg
Trådstart#1

Tjena!

Sitter här och klurar lite. Jag har byggt upp en site med hjälp av moduler som var och en har olika syften. Modulerna används främst vid beställning.

Det jag undrar nu är om det lönar sig att göra om dessa moduler till funktioner? De kommer troligtvis att fortfarande ligga i en includefil om det inte finns något bättre alternativ men kan det tänkas att man tjänar något på att göra om dem till funktioner?

En av fördelarna är ju att man själv kan välja när de ska köras men nackdelen är att det skulle krävas en del arbete för att få det att fungera och kan man lika gärna inkludera koden så är det nästan inte värt det?

Några åsikter/förslag/tankar?

Tack på förhand. :)

//JANspeed

Medlem sedan jan. 2001510 inlägg
#2

Som vanligt så var det tydligen ingen som fattade var jag menade.

Det jag undrar över är om det är värt att göra om kod som man include:ar till en funktion?

Med värt menar jag typ prestandavinst, ökad funktionalitet eller något annat roligt som jag inte tänkt på? :)

Medlem sedan juni 200032 967 inlägg
#3

När du funktioniserar din kod vinner du en helt ny dimension av kodåtervinning.

Tänk lite på det. ;)

Mvh,

Medlem sedan dec. 19998 577 inlägg
#4

... plus att det inte blir lika stökigt med globala variabler, om du kapslar in det mesta i funktioner så slipper du att tänka på om det finns krockar eller inte... :)

Medlem sedan jan. 2001510 inlägg
#5

Hur gör jag då för att slippa öppna databaskopplingen två gånger om jag har två moduler som bägge utnyttjar databaser?

/JANspeed

Medlem sedan dec. 200012 464 inlägg
#6

Du öppnar ett connectionobjekt och sedan skickar du det som parameter till funktionerna.

Medlem sedan maj 20009 inlägg
#7

Det allra bästa är att alltid sträva efter att lägga koden i en klass. På så sätt blir det en baggis att utföra ändringar.

Då kn du med fördel öppna kopplinga och dylikt i class_Initialize och stänga dom i class_Terminate

//Micke

Medlem sedan jan. 2001510 inlägg
#8

Både LarsGs och bulows förslag låter intressanta men hur implementeras det? Har ni något kodexempel?

/JANspeed

Medlem sedan jan. 2001510 inlägg
#9

Är det möjligt att inkludera en funktion längs ned på sidan fast ändå köra den med resten av koden? Eller ska man lägga till funktionerna överst? Hur gör ni andra?

/JANspeed

Medlem sedan juni 200032 967 inlägg
#10

Du kan inkludera var du vill, eftersom SSI körs innan asp-tolken gör sitt.

Du har tillgång till funktionerna vare sig din include ligger först eller sist i dokumentet.

Jag brukar alltid göra includes överst, när det gäller funktionsfiler.

Mvh,

Medlem sedan jan. 2001510 inlägg
#11

Använder jag en Sub eller en Function?

Verkar det här vettigt?

<%

'Open conn
Dim Conn

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "driver={SQL Server};server=localhost;uid=*;pwd=*;database=*"	
Conn.Open

'Function

Function add_to_db(Conn, Kampanjkod, OrderText, Produkt, Epost)

Dim rs, SQL

SQL = "spOrderIns '" & Kampanjkod & "', '" & OrderText & "', '" & Produkt & "', '" & Epost & "'"

Set rs = Conn.Execute(SQL)

add_to_db = rs("ID")

Set rs = Nothing

End Function

'Close

Conn.Close
Set Conn = Nothing
%>

Hygglo alla som hjälper till. :)

/JANspeed

Medlem sedan jan. 2001510 inlägg
#12

Glömde att köra själva funktionen också.

<%

'Open conn
Dim Conn

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "driver={SQL Server};server=localhost;uid=*;pwd=*;database=*"	
Conn.Open

'Function

Function add_to_db(Conn, Kampanjkod, OrderText, Produkt, Epost)

Dim rs, SQL

SQL = "spOrderIns '" & Kampanjkod & "', '" & OrderText & "', '" & Produkt & "', '" & Epost & "'"

Set rs = Conn.Execute(SQL)

add_to_db = rs("ID")

Set rs = Nothing

End Function

[b]'Run function
RefNr = add_to_db(Conn, "Ugha bougha", "Beställning", "Fiol", "gubben@noak.com")[/b]

'Close

Conn.Close
Set Conn = Nothing
%>

[Redigerat av Janspeed den 20 dec 2001]

Medlem sedan dec. 200012 464 inlägg
#13

jo

Medlem sedan jan. 2001510 inlägg
#14

Då kör jag med en function. Tack för hjälpen och God Jul. :)

/JANspeed

[r] Menare ju självklart en function inte en sub. Subbarna returnerar ju inga värden. [/r]

[Redigerat av Janspeed den 21 dec 2001]

261 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)