---
title: "Metod för att kontrollera personnummer"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/38188-metod-för-att-kontrollera-personnummer"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "skarbratt"
published: "2001-04-06T10:25:00.000Z"
updated: "2002-06-27T15:51:09.000Z"
replies: 1
views: 1438
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/38188-metod-för-att-kontrollera-personnummer"
---

# Metod för att kontrollera personnummer

## #1 — skarbratt, 2001-04-06T10:25Z

Hittade en liknande funktion under PHP och ny finns den även här under ASP.

\<font size="1" face="Verdana, Arial, Helvetica, sans-serif"\>Kod:\<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666"\>
\<%
	pr 		= Request("pr")
	IF pr = "" THEN
		Response.Write("\<FORM METHOD=""get""\>\<INPUT TYPE=""text"" SIZE=""10"" NAME=""pr""\>\<BR\>\<INPUT TYPE=""submit"" VALUE=""Kontrollera""\>\</FORM\>")
	ELSE
		IF Len(pr) \<\> 10 THEN
			Response.Write("Felaktigt angivet personnummer! Ange personnummret utan bindestreck, totalt 10 siffror.")
			Response.Write("\<P\>\<FORM METHOD=""get""\>\<INPUT TYPE=""text"" SIZE=""10"" NAME=""pr""\>\<BR\>\<INPUT TYPE=""submit"" VALUE=""Kontrollera""\>\</FORM\>")
		ELSE
			pr2 	= pr
					
			For i = 0 to 8
		
				k		= Left(pr2,1)
				pr2 = Right(pr2,len(pr2)-1)
				
				k = k \* ((i + 1) Mod 2 + 1 )
				IF len(k) = 2 THEN
					totalt = totalt + Int(Left(k,1)) + Int(Right(k,1))
				ELSE
					totalt = totalt + k
				END IF
				
			NEXT
			
			sista =  10 - Int(Right(totalt,1))
						
			IF Cint(sista) = Cint(Right(pr,1)) THEN
				Response.Write("Korrekt personnummer!")
			ELSE
				Response.Write("Felaktigt personnummer!")
			END IF
		END IF
	END IF
%\>

Permalänk: https://www.webforum.nu/p/38188

## #2 — evesve, 2002-06-27T15:51Z

Ändra 
\======
NEXT

sista = 10 - Int(Right(totalt,1))

IF Cint(sista) = Cint(Right(pr,1)) THEN
\======
till
\======
NEXT

sista = 10 - Int(Right(totalt,1))
If sista = "10" Then
sista = "0"
End If
IF Cint(sista) = Cint(Right(pr,1)) THEN
\========
så funkar även personnummer som slutar på 0

Permalänk: https://www.webforum.nu/p/706668

---

Tråden på webben: https://www.webforum.nu/amne/asp/38188-metod-för-att-kontrollera-personnummer
