Avatar billede peterpeter Seniormester
20. november 2003 - 23:10 Der er 6 kommentarer og
1 løsning

Decimaltal i et udtræk fra Access database

Hej Alle
I forbindelse med et betalingmodul har jeg følgende side, som henter nogle priser fra en database.
Nu er det blevet bestemt, at priserne skal være med to decimaler !! Hvor jeg før i tiden ikke brugte nogle decimaler.
Jeg ændrer i databasen - og så lige pludselig virker skidtet ikke !!

Er der nogen der ved, hvad jeg skal gøre for at min asp fil virker igen ???

Det er de danske kroner det drejer sig om.

(EURO kronerne bliver bare ganget med de danske kroner)

Tak for hjælpen.

Peter

<!--#include file="include/config.asp"-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html><head>
    <title>ASP Shop</title>
</head>

<link href="style.css" rel="STYLESHEET" TYPE="text/css">

<body>
<h2><font face="Verdana" size="4">Betalingsmodul</font></h2>

<font face="Verdana" size="2">[ <a href="cart-shop-dk.asp"><b>
Betaling</b></a> | <a target="_top" href="artikel.asp?sprog='dk'&kat='6'"><b>Tilbage</b></a> ]<br><br>

</font>

<h1><u><font face="Verdana">Serviceafgift 2004:</font></u></h1>

<%
Set Conn = Server.Createobject("ADODB.Connection")
Conn.Open strDSN
Set RS = Conn.Execute("SELECT * FROM Products")
%>

<table border="1" style="border-collapse: collapse" bordercolor="#111111" cellspacing="0">
  <tr>
   
    <td><font face="Verdana" size="2"><b>Lejlighed</b></font></td>
    <td><font face="Verdana" size="2"><b>Beskrivelse</b></font></td>
    <td><font face="Verdana" size="2"><b>Pris pr. uge [DKK]</b></font></td>
    <td><font face="Verdana" size="2"><b>[EURO]</b></font></td>
    <td width="41">&nbsp;</td>
  </tr>

<%
Do While Not RS.EOF
  %><font face="Verdana" size="2"> </font>
  <tr>
   
    <td><%=RS("Name")%>&nbsp;</td>
    <td>Serviceafgift, lejlighed nr:&nbsp;<%=RS("Description")%>&nbsp;</td>
    <td align="right"><%=FormatNumber(RS("Price"),0)%>&nbsp;</td>
    <td align="right"><%=FormatNumber(RS("Price")/7.44,0)%>&nbsp;</td>
    <td width="41"><font face="Verdana" size="2">
<a href="cart-shop-dk.asp?action=add&id=<%=RS("ID")%>"><b>Betal</b></a></td>
  </tr>
  <%
RS.MoveNext
Loop

RS.close
Conn.Close
Set RS = nothing
Set Conn = nothing

%> </font></table>
</body></html>
Avatar billede Slettet bruger
20. november 2003 - 23:34 #1
Der er noget der lige spriger mig i øjet.

Der burde ikke stå: <%=RS("Description")%>

Men : = <%RS("Description")%>

Hvis du ønsker et "=" i dine sætninger.

Dette gælder self. alle linerne loopet hvor du trækker data ud.

Hvis det ikke er problemet, så beskriv nærmere hvad det er der ikke viker.
Avatar billede Slettet bruger
20. november 2003 - 23:45 #2
Jeg mente self. at der skal stå:

= <%response.write RS("Description")%>
Avatar billede crapman Nybegynder
21. november 2003 - 07:55 #3
Jtl >> Hvorfor skulle han dog bruge = ???? Det giver jo ingen mening... =tegnet er jo et matematisk udtryk, som ikke bruges når priser listes i en webshop... <%response.write rs("description")%> fungerer jo PRÆCIS på samme måde som <%=rs("description")%>

PeterPeter >> Jeg tror problemet ligger i, at du har skrevet tingene om i din database, sådan er der eks står 9.999,99 som man ville skrive det på dansk... Imidlertid er det lige omvendt på engelsk.. Der skriver man 9,999.99

Prøv at lave det om og se om det så virker... Når du så får det skrevet på dine sider ser det forkert ud, men så kan du jo lave noget fusk (EFTER du har regnet med tallene og gjort hvad der skal gøres) ved at skrive noget i stil med:
talstreng = replace(replace(talstreng, ",","komma"), ".","punktum")
talstreng = replace(replace(talstreng, "komma", "."), "punktum", ",")

Det er LIDT noget fusk, men det virker... jeg er dog ret sikker på at der findes en stump kode et sted, der får serveren til at reagere på dansk, som man kan med tid.... men har ikke lige tid til at finde den... (er på arbejde ;)
Avatar billede hossein Nybegynder
21. november 2003 - 10:26 #4
Hvis feltet har en datatype som tal skal du bare bruge Formatnumber funktionen f ex.:
<% =FormatNumber(12345.67899, 2) %>

Output:
(12,345.68)
Nu er det spm. om dansk eller amerikansk format, når det er dansk så skal du i et sted i toppen af siden skrive:
<% Session.LCID = 1030 %>
Avatar billede crapman Nybegynder
21. november 2003 - 11:14 #5
Yeah Hossein... præcis den stump kode jeg ledte efter ;)
Avatar billede peterpeter Seniormester
27. december 2003 - 13:47 #6
Hossein: Dit svar hjalp mig til at løse problemet, tak.

Vil du lige svare, så du kan få dine point ??
Avatar billede hossein Nybegynder
27. december 2003 - 14:36 #7
selv tak!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester