svenMedlem sedan aug. 2001383 inlägg Håller på med ett (litet) bokningssystem men har stött på ett litet fel som jag inte kommer ut.
Så här se min kod ut:
<!-- #include file="../connectt.asp" -->
<%
Session.Contents.Remove("sorry")
ddator = Request.Querystring("dator")
ttid = Request.Querystring("tid")
namn = session("anvandareappelgren")
SQLb = "SELECT * FROM bokning WHERE ddator = '"& ddator &"' AND ttid = #"& ttid &"# AND ddatum = Date() "
set rsb = db.execute(SQLb)
if not rsb.EOF then
session("sorry") = "ja"
db.close
set db = nothing
Response.Redirect("publik.asp")
else
SQLa = "SELECT COUNT (*) AS antal FROM bokning WHERE namn = '"& namn &"' AND ddatum = Date() "
set rsa = db.execute(SQLa)
if rsa("antal") > 2 then
session("manga") = "yes"
db.close
set db = nothing
Response.Redirect("publik.asp")
else
Set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM bokning WHERE 1=2"
rs.Open SQL, db, 1, 2
rs.AddNew
rs("ddatum") = Date()
rs("ttid") = ttid
rs("ddator") = ddator
rs("namn") = namn
rs.Update
rs.Close
db.close
set db = nothing
Response.Redirect("publik.asp")
end if
end if
%>
Mitt problem är att även om första ifsatsen, som kollar om det finns en bokning, är sann så körs inserten... Så jag har väl tänkt fel i if satsen men kommer inte på hur...
Tacksam om någon kan hjälpa mig...
verkar inte vara nått fel på if-taggen, prova att skriva ut SQLb med response.write, så ser du om värderna är korrekta.
SQLb = "SELECT * FROM bokning WHERE ddator = '"& ddator &"' AND ttid = #"& ttid &"# AND ddatum = Date() "
response.write SQLb
kom ihåg bara att sätta kommentarer på övrig kod ;)
svenMedlem sedan aug. 2001383 inlägg Har testat det... och SQLb satsen ger rätt värden... det är till och med så att session sätts som den skall... vilket gör det ännu märkligare...
PS... lovar att jag skall bli bättre på att kommentera :)
svenMedlem sedan aug. 2001383 inlägg Snälla... finns det någon där ute som kan hjälpa mig... blir gammal av det här....
SPiNMedlem sedan mars 20007 896 inlägg Låter ju konstigt, för ett skript ska ju avbrytas vid en Response.Redirect. Försök med att lägga till Response.End efter din redirect, för att avbryta körningen "på riktigt". Men som sagt, den bör ju avbrytas vid en redirect.
svenMedlem sedan aug. 2001383 inlägg Nepp... det hjälpte inte.
Tror att det är första if satsen som är knas... Den skall kolla om tiden är bokad... är den inte det skall man skickas vidare.
SQLb = "SELECT * FROM bokning WHERE ddator = '"& ddator &"' AND ttid = #"& ttid &"# AND ddatum = Date() "
set rsb = db.execute(SQLb)
'Kollar om tiden är bokad
if not rsb.EOF then
session("sorry") = "ja"
db.close
set db = nothing
Response.Redirect("publik.asp")
Response.End
else
Nån som ser något fel?