webForumDet fria alternativet

tal, session och databas problem.

ASPur ASP

5 svar · 250 visningar · startad av ConnyFox

Medlem sedan aug. 20011 087 inlägg
Frågan#1

jag har ett tal lagrat i databasen som en bigint (mysql) talet kan se ut ungefär såhär..
1738273649

men när jag plockar ut det ur databasen och lägger det i session så fungerar det inte längre som ett tal, kör jag isnumeric på den så får jag false..

session("tal") = rs(1)

och jag vet att rs(1) är rätt för när jag skriver ut det utan att använda isnumeric så skrivs rätt tal ut.
Så jag fattar inte varför talen inte går igenom isnumeric..

Medlem sedan juni 200032 967 inlägg
#2

Mycket märkligt. Skulle man kunna få se lite mer kod, från SQL-frågan via recordset tills det att du sätter sessionsvariabeln?

Medlem sedan aug. 20011 087 inlägg
#3

Visst!

har haft detta problemet tidigare, vet inte varför det blir så..

dim strEmail
strEmail = request.form("email")

SQL = "Select * from kunder where email = ? LIMIT 1"
cmd.CommandText = SQL

SET rs = cmd.Execute (, array(strEmail))

if not rs.eof then

session("kundid") = rs(1)
response.cookies("kundid") = rs(1)
response.write session("kundid")

Kör man sedan isnumeric på session("kundid") så blir det false..

Medlem sedan dec. 19996 721 inlägg
#4

session("kundid") = cInt(rs(1))

Medlem sedan juni 200032 967 inlägg
#5

emission skrev:

session("kundid") = cInt(rs(1))

Om talen är så stora som ConnyFox visar i sitt första inlägg blir det krasch av det hela. Använd då hellre CLng(). Men jag skulle väldigt gärna veta varför inte IsNumeric returnerar det den ska...

Medlem sedan sep. 2003301 inlägg
#6
  kund_ID = Session("kundi_ID")
  Response.Write IsNumreric(kund_ID)

Jag har sett att det ibland hjälper att omvandla SessionVariabler till lokala eller globala variabler....

135 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)