/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
At lægge tal sammen i asp
Fra : Rasmus Weber


Dato : 31-03-01 11:53

Jeg sidder og fusker lidt med en side der skal kunne lave nogle simple
regnestykker. Jeg kan trække fra, multiplicere og dividere, men jeg kan ikke
lægge sammen.
Er der nogen der har et link til en side hvor der er skrevet lidt om talmagi
og asp?
Eller en der kan fortælle mig hvordan man får 1+2 til at give 3 og ikke 12?

*Jeg har kaldt filen regne.asp og den hentes med f.eks.
regne.asp?Var1=1&Var2=2

<html>
<head><title>Regne</title></head>
<body>
<%
dim Var1
dim Var2
set Var1 = Request.Querystring("Var1")
set Var2 = Request.Querystring("Var2")
%>

Var1 = <%=Var1%>
<br>
Var2 = <%=Var2%>
<br><br>

<%
Var3 = Var1 - Var2
%>
<%=Var1%> - <%=Var2%> = <%=Var3%>
<br>

<%
Var3 = Var1 * Var2
%>
<%=Var1%> * <%=Var2%> = <%=Var3%>
<br>

<%
Var3 = Var1 / Var2
%>
<%=Var1%> / <%=Var2%> = <%=Var3%>
<br>

<b>Hvorfor kan man ikke lægge sammen?<br>
<%
Var3 = Var1 + Var2
%>
<%=Var1%> + <%=Var2%> = <%=Var3%>
</b>
<br>

</body>
</html>


--
-Rasmus '[DEL]Phuego' Weber
weber@we-st.dk
phuego@del33t.dk




 
 
Janus Klok Lauritsen (31-03-2001)
Kommentar
Fra : Janus Klok Lauritsen


Dato : 31-03-01 12:20


"Rasmus Weber" <weber@we-st.dk> wrote in message
news:%Dix6.5574$o4.232923@news010.worldonline.dk...
> Jeg sidder og fusker lidt med en side der skal kunne lave nogle simple
> regnestykker. Jeg kan trække fra, multiplicere og dividere, men jeg kan
ikke
> lægge sammen.
> Er der nogen der har et link til en side hvor der er skrevet lidt om
talmagi
> og asp?
> Eller en der kan fortælle mig hvordan man får 1+2 til at give 3 og ikke
12?
>
> *Jeg har kaldt filen regne.asp og den hentes med f.eks.
> regne.asp?Var1=1&Var2=2
>
> <html>
> <head><title>Regne</title></head>
> <body>
> <%
> dim Var1
> dim Var2
> set Var1 = Request.Querystring("Var1")
> set Var2 = Request.Querystring("Var2")
> %>
Måske er fejlen at du bruger "set" før dine variabler. Dette skal ikke
bruges når du arbejder med primitive datatyper, kun når du arbejder med
objecter !
Bare et bud.
Mvh
Janus



Rasmus Weber (31-03-2001)
Kommentar
Fra : Rasmus Weber


Dato : 31-03-01 12:33

<snip>
| Måske er fejlen at du bruger "set" før dine variabler. Dette skal ikke
| bruges når du arbejder med primitive datatyper, kun når du arbejder med
| objecter !
</snip>

Desværre gav det ikke noget. 1+2 giver stadig 12 =)

--
-Rasmus '[DEL]Phuego' Weber
weber@we-st.dk
phuego@del33t.dk



Thomas Jespersen (31-03-2001)
Kommentar
Fra : Thomas Jespersen


Dato : 31-03-01 12:44

"Rasmus Weber" <weber@we-st.dk> writes:

> set Var1 = Request.Querystring("Var1")
> set Var2 = Request.Querystring("Var2")

Ok Var1 og Var2 er nu to tekststrenge. (undlad set, den skal kun
bruges hvis variablene skal pege på objekter).

> Var3 = Var1 + Var2

Var3 er nu sammensætningen af de to tekststrenge:

"1" + "2" = "12"

Plus virker altså i den sammenhæng ligesom "&":

"1" & "2" = "12"

Grunden til at de andre operatorer ikke giver problemer er at de ikke
kan bruges sammen med tekststrenge og derfor ikke giver tvetydigheder.

Det du altså mangler er at lave Var1 og Var2 om til tal:

Var1 = Cdbl(Request.Querystring("Var1"))
Var2 = Cdbl(Request.Querystring("Var2"))

(eller CInt hvis det er heltal)

Rasmus Weber (31-03-2001)
Kommentar
Fra : Rasmus Weber


Dato : 31-03-01 12:53

Har selv fundet løsningen.
Man skulle lige sørge for at de variable var tal. Det gjorde jeg ved
At smide
Var1 = CInt(Var1)
Var2 = CInt(Var2)
Efter at man havde hentet dem ved Request.Querystring

--
-Rasmus '[DEL]Phuego' Weber
weber@we-st.dk
phuego@del33t.dk


Jonathan Stein (31-03-2001)
Kommentar
Fra : Jonathan Stein


Dato : 31-03-01 13:40

Rasmus Weber wrote:

> Eller en der kan fortælle mig hvordan man får 1+2 til at give 3 og ikke 12?

ASP kan bedre lide tekst end tal... Du kan konvertere dine variable tal heltal
eller kommatal med h.h.v. CInt(variabel) og CDbl(variabel). F.eks.
Var3 = CInt(Var1) + CInt(Var2)

Det er måske lidt smartere at gøre det ved tildelingen:
Var1 = CInt(Request.Querystring("Var1"))
- så vil Var1 så vidt muligt være et tal.

M.v.h.

Jonathan




Niels Henriksen (01-04-2001)
Kommentar
Fra : Niels Henriksen


Dato : 01-04-01 20:51

"Rasmus Weber" <weber@we-st.dk> wrote in message
news:%Dix6.5574$o4.232923@news010.worldonline.dk...
> Jeg sidder og fusker lidt med en side der skal kunne lave nogle simple
> regnestykker. Jeg kan trække fra, multiplicere og dividere, men jeg kan
ikke
> lægge sammen.
> Er der nogen der har et link til en side hvor der er skrevet lidt om
talmagi
> og asp?
>
Når du skal bruge et tal som f.eks. som du skal nu, så skal du give serveren
besked på at den skal betragte dit tal som et tal og ikke en streng.

Ved at bruge nedenstående, så får du altid et tal ud:

var1 = Clng("0" & Request("var1"))

Her vil du altid mindst få "0" ud som værdi.


--
Niels Henriksen
Systemudvikler
Netopcom Danmark ApS
www.netopcomdanmark.dk




Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408868
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste