webForumDet fria alternativet

Function

6 svar · 411 visningar · startad av jagularen

jagularenMedlem sedan apr. 20036 inlägg
#1

Hej!
Hur funkar Fuction funktionen?
Har många små kodsidor och tycker det är lite tråkigt och fult på servern med så många filer, så jag undrar hur man gör så att man kan lägga in många funktioner på samma asp sida och sedan länka till respektive formulär? ett exempel.
Har en sida som uppdaterar en kolumn och den sidan ser ut som följer
<!--#include file="settings.asp"--> öppnar databasen
<%
btn = LCase(Request("btn"))
If Btn = "betalat" Then
nick = Request.form("nick")
sql = "update boka set betalat = 'JA' where nick = '"& nick & "'"

con.execute(sql)
con.close
set con=nothing
end if
%>
Hur lägger jag in den som en function och hur anropar jag denna funcion sedan?
Tack//Jocke

InferisMedlem sedan sep. 2000669 inlägg
#2

En funktion kan se ut så här:

Function betaltellerej
btn = LCase(Request("btn")) 
If Btn = "betalat" Then 
nick = Request.form("nick") 
sql = "update boka set betalat = 'JA' where nick = '"& nick & "'" 
con.execute(sql) 
con.close
end if
End function

Sen kallar du på funktionen med <%=betaltellerej%> var som helst.

Kanske ska tillägga att jag inte är så superduktig på det här.

Jesper TMedlem sedan nov. 20017 058 inlägg
#3

Välkommen till WF!
Eventuellt lite O.T.
Skulle rekommendera ett boolean(true/false)-fält för "betalat" istället.

sql = "update boka set betalat = true where nick = '"& nick & "'"

Lägg även till detta:con.execute(sql) ,,128
Som innebär att ingenting kommer att returneras ifrån databasen.

jagularenMedlem sedan apr. 20036 inlägg
#4

Tack för inläggen,
Om man nu vill att koden jag skrev skall uppdatera från det man trycker på en knapp i <form method="POST" action="">
<input type="text" name="betala" size="15">
<input type="submit" value="betala" name="b3" size="20">
</form>
Vad skriver man då? Skriver man samma eller Kan man includera den på samma vis som med en vanlig asp sida? :q
Skall tilläggas att inte jag heller är bra på det här, men man lär sig hela tiden.
//Jocke

Jesper TMedlem sedan nov. 20017 058 inlägg
#5

Jag vet inte om det riktigt är en funktion du är ute efter i detta sammanhang. Om du har en sida där en massa saker skall hända så kan du döpa den sidan till ex. action.asp
Och så kallar du på den sidan då du vill lägga till / ta bort saker ur databasen eller något annat.
Sedan kallar du på de olika händelserna med en case-sats.

<form method="POST" action="action.asp?foo=uppdatera"> 
<input type="text" name="betala" size="15"> 
<input type="submit" value="betala" name="b3" size="20"> 
</form>

Sidan action.asp

Select Case Request("foo")
case "radera"
call radera()  'Kör subben "radera"
case "addera"
call addera() 'Kör subben "addera"
case "uppdatera"
call uppdatera() 'Kör subben "uppdatera"
end select

sub addera()       'Startar subben addera
'Lägg till något i någon databas
end sub

sub radera()        'Startar subben radera
'Radera något någonstans
end sub

sub uppdatera()  'Startar subben uppdatera
nick = Request.form("nick") 
sql = "update boka set betalat = true where nick = '"& nick & "'" 
con.execute(sql),,128
con.close
end sub

:)

voigtann1Medlem sedan juni 20018 810 inlägg
#6

Denna kod var rätt okey Jesper T... :e så har jag aldrig tänkt :e

jagularenMedlem sedan apr. 20036 inlägg
#7

HA! Det ser ju simpelt ut, Tack för detta. Nu skall här labboreras med koder. :birp Nu kan man ju få in allt i samma sida och kalla på det lite enkelt :e

//Jocke

Genererad på 387 ms · cache AV · v20260730165559-full.f96bc7eb