webForumDet fria alternativet

Session problem

24 svar · 493 visningar · startad av pellsäter

pellsäterMedlem sedan aug. 2000533 inlägg
#1

Den här funkar

sql = "Select * from tempKorg Where SessionID = "& 100459412
rs.open sql,conn

men inte

sql = "Select * from tempKorg Where SessionID = "& sSession&"
rs.open sql,conn

sSession kommer från

<%sSession = Session.Sessionid%>

Hjälp!!

@ndersMedlem sedan juni 200026 914 inlägg
#2
sql = "Select * from tempKorg Where SessionID = "& sSession

Mvh,

pellsäterMedlem sedan aug. 2000533 inlägg
#3

Nej det hjälper inte!

Den tar inte med något SessionID från variablen.. Utan det funkar bar när man tar ett exakt SessionId som det första exemplet...

Jag ska radera från tempKorg och lägga in uppgifterna i orderKorg........

pellsäterMedlem sedan aug. 2000533 inlägg
#4

Här är koden

<%Sub Bestalla
Set conn = Server.CreateObject("ADODB.Connection")
Conn.Open "xxxxx"
sql = "Select * From Kunder Where Losenord = '" & sLosen & "' And Logg = '" & slogin & "'"
set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql,conn

If not (Rs.Eof) then
sKid = rs("kundID")
rs.close

sql = "Select * from tempKorg Where SessionID = "& sSession
rs.open sql,conn

Do until rs.eof
sAid = rs("artikelID")
sAntal = rs("Antal")
sdatum=date()

sql="Insert Into Orderrad(OrderID, Antal, KundID, artikelID, datum) Values ('"&sSession&"', '"&sAntal&"', '"&sKid&"', '"&sAid&"', '"&sdatum&"')"
conn.execute(sql)

sql = "Delete * from tempKorg Where SessionID = "& sSession
conn.execute(sql)
rs.movenext
loop
response.write "Tack för din beställning"
Session.Abandon
Else
response.write "Du är inte kund"
End If
conn.close
End sub%>

solbulleMedlem sedan mars 20014 998 inlägg
#5

Å du är 100% på att sSession innehåller något?

pellsäterMedlem sedan aug. 2000533 inlägg
#6

nej det är jag inte... ska kolla

Jesper TMedlem sedan nov. 20017 058 inlägg
#7

Står denna rad: <%sSession = Session.Sessionid%> före selectsatsen?

pellsäterMedlem sedan aug. 2000533 inlägg
#8

Jo den innehåller ett ID

pellsäterMedlem sedan aug. 2000533 inlägg
#9

den står högst upp i sidan

Jesper TMedlem sedan nov. 20017 058 inlägg
#10

Vad händer om du tar bort '(enkelfnuttarna) runt sSession?

sql="Insert Into Orderrad(sSession ,OrderID, Antal, KundID, artikelID, datum) Values ('"&sSession&"', '"&sAntal&"', '"&sKid&"', '"&sAid&"', '"&sdatum&"')"

Skall inte sSession vara med och leka här?

@ndersMedlem sedan juni 200026 914 inlägg
#11

Du har inte skapat variabeln sSession i en annan sub? i så fall är den lokal för den suben. Prova att lägga tilldelningen av sSession inne i subrutinen Bestalla.

Mvh,

pellsäterMedlem sedan aug. 2000533 inlägg
#12

det funkar itne med nåt!

När jag lägger in orden i tempKorg så funkar det med

sql = "Insert Into tempKorg(sessionID,artikelID,antal) Values ('" & sSession & "', '" & sArtnr & "', '" & sAntal & "')"
conn.Execute(sql)

med sedan funkar det inte när jag ska hämta ordern och lägga in den i
sql="Insert Into Orderrad(OrderID, Antal, KundID, artikelID, datum) Values ('"& sSession &"', '"& sAntal &"', '"& sKid &"', '"& sAid &"', '"& sdatum &"')"
conn.execute(sql)

eller ta bort den från tempKorg med
sql = "Delete * from tempKorg Where SessionID = "& sSession
conn.execute(sql)

Tacksam för svar

@ndersMedlem sedan juni 200026 914 inlägg
#13

Var är sSession deklarerad? Inne i en sub eller funktion? I så fall är variabeln lokal för den subben/funktionen.

Du skulle ju kunna ersätta sSession med Session.SessionID och använda det direkt i dina SQL-frågor.

Mvh,

pellsäterMedlem sedan aug. 2000533 inlägg
#14

den är deklarerad i toppen av sidan och bara inom <% %> såhär:

<%
sAction = Cstr(Request.Querystring("andra"))
sAntal = Cint(Request.Querystring("antal"))
sArtnr = Cint(Request.Querystring("artnr"))
sBesk = Cstr(Request.Querystring("besk"))
sSession = Session.Sessionid
sLosen = Request.Querystring("los")
sLogin = Request.Querystring("log")
response.write sSession
%>

Jesper TMedlem sedan nov. 20017 058 inlägg
#15

Funkar inte detta?:

sql="Insert Into Orderrad(OrderID, Antal, KundID, artikelID, datum) Values ('"& Session.Sessionid 
 &"', '"& sAntal &"', '"& sKid &"', '"& sAid &"', '"& sdatum &"')" 
conn.execute(sql)
solbulleMedlem sedan mars 20014 998 inlägg
#16

sSession = Cint(Session.Sessionid)

alt.

sSession = Cstr(Session.Sessionid)

kanske?

Jesper TMedlem sedan nov. 20017 058 inlägg
#17

Vad är det för skilnad på de två varianterna solbulle?

solbulleMedlem sedan mars 20014 998 inlägg
#18

Det ena, Cint gör heltal, siffror av variabeln, den andra Cstr gör det till en sträng.

...tror jag.... ;)

Utifall att det som den är i nuläget inte stämmer med vad fältet idb:n är.

pellsäterMedlem sedan aug. 2000533 inlägg
#19

får inget av era förslag att funka...Har kollat så att jag har något i variaben sSession hela tiden men det läggs inte in nåt i orderRad eller tas bort nåt från tempKorg.....

Byter jag däremot ut mot ett existerande SessionID som finns i tempKorgen så funkar allt sammans

solbulleMedlem sedan mars 20014 998 inlägg
#20

Du kommer in i din loop så att: "Tack för din beställning" skrivs ut?

Genererad på 386 ms · cache AV · v20260730165559-full.f96bc7eb