Avatar billede znopie Nybegynder
27. december 2009 - 11:51 Der er 8 kommentarer og
1 løsning

Procentregning giver irriterende fejl (800a000d)

Hej eksperter

Jeg har problemer med følgende regnestykke, da det giver en fejl:

Microsoft VBScript runtime error '800a000d'

Type mismatch

/ms.asp, line 52


Regnestykket er:

procent = int(rs("countTimes")/rs("total")*100) ' F.EKS. 4/2*100 (countTimes og total er database count())


Jeg vil meget gerne have hjælp til at løse problemet
Avatar billede Slettet bruger
27. december 2009 - 12:35 #1
Prøv at udskrive værdierne før du laver udregningen.
Avatar billede znopie Nybegynder
27. december 2009 - 12:44 #2
Det har jeg gjort, og få følgende resultater

5/2*100   
5/2*100   
5/1*100   

Min mysql forspørgsel er således

SELECT *,count(id) AS counttimes,(SELECT count(id) FROM search) AS total FROM search GROUP BY search
Avatar billede znopie Nybegynder
27. december 2009 - 12:47 #3
* Der er fejl i udregningen, da det skal være 2/5*100, men skal bare have den til ikke at give fejl, når jeg ber den udregne det.
Avatar billede Slettet bruger
27. december 2009 - 12:48 #4
prøv
procent = int(cint(rs("countTimes"))/cint(rs("total"))*100)

Hvilken type er procent?
Avatar billede znopie Nybegynder
27. december 2009 - 12:51 #5
Du har reddet min dag, har sat med det i et par timer, og nu virker det.

Læg et svar.

* Den skal udregne procenten på et søgeord fra en database
Avatar billede Slettet bruger
27. december 2009 - 12:51 #6
Udskriver du værdierne før udregningen eller efter?

Det skal være:
  response.write(...)
  procent = int(rs("countTimes")/rs("total")*100)

IKKE:
  procent = int(rs("countTimes")/rs("total")*100)
  response.write(...)
Avatar billede Slettet bruger
27. december 2009 - 12:52 #7
Svar :)
Avatar billede znopie Nybegynder
27. december 2009 - 13:06 #8
Jeg udskriver den før det bliver udskrevet, og det virker.

altså:
  procent = int(rs("countTimes")/rs("total")*100)
  response.write(...)
Avatar billede sth Novice
27. december 2009 - 20:54 #9
jeg mener at huske jeg selv har haft samme problem med mysql, og count, problemet er at en nyre mysql ikke returner count som numerisk

prøv at lave denne test:  response.write IsNumeric(rs("countTimes"))


hvis resultatet er False så kenderdu nu problemet
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