webForumDet fria alternativet

Nya poster i Access med Netscape?

ASP

9 svar · 193 visningar · startad av hakangus

Medlem sedan feb. 200144 inlägg
Frågan#1

Jag får problem när jag ska lägga till nya poster i en Access-databas. Formuläret skickar data till en "204-sida" som lägger till posten. I Explorer funker det men i Netscape visar markören ett timglas. Posten läggs till men timglaset försvinner inte på 10-15 sek.

Vad är det för fel?

Medlem sedan juli 20003 825 inlägg
#2

Visa koden grabben! :-)

------------------
Never underestimate your opponents.

Medlem sedan feb. 200144 inlägg
#3

<%response.buffer="true"%>
<%response.status="204 No Content"%>
<%response.expires="0"%>
<%if request.form("produkt")="" then%>
<%Response.Redirect "produkter.asp"%>
<%end if%>
<%set connection=server.createobject("adodb.connection")
DSN="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN=DSN & "DBQ=" & server.mappath("data/data.mdb")
connection.Open DSN
SQLStmt = "INSERT INTO tblkundvagn"
SQLStmt = SQLStmt & "(produkt,antal,sessionid)"
SQLStmt = SQLStmt & "VALUES('" & Request.Form("produkt") & "','" & Request.Form("antal") & "','" & session.sessionid & "')"
connection.Execute(SQLStmt)%>
<%connection.close%>

Medlem sedan feb. 20013 023 inlägg
#4

Inget svar, men.....
att skriva så här är inte bra. Det tar lång tid att exekvera koden.
<%response.buffer="true"%>
<%response.status="204 No Content"%>
<%response.expires="0"%>

Skriv så här:
<%
response.buffer="true"
response.status="204 No Content"
response.expires="0"
%>

Medlem sedan juli 20003 825 inlägg
#5

Du har ingen koppling... Byt till:

Server.mappath("\data\data.mdb")

------------------
Never underestimate your opponents.

Medlem sedan feb. 200144 inlägg
#6

Server.mappath("\data\data.mdb") funkade ju absolute inte, men ("data\data.mdb") möjligtvis. Det är inte problemet. Posten läggs till som den ska men det där j-a timglaset. Någon loop gör att Netscape får krupp och inte kommer vidare.

Medlem sedan juli 20003 825 inlägg
#7

skriv server.mappath som jag skrev och ta bort dessa rader:

<%response.buffer="true"%>
<%response.status="204 No Content"%>
<%response.expires="0"%>

------------------
Never underestimate your opponents.

Medlem sedan feb. 20001 590 inlägg
#8

Eftersom det funkar i IE och problemet är timglaset i netscape, så har det inget med ASP koden att göra, utan att det är Netscape som inte klarar av "204 No Content".
Du vill antagligen spara data från en länk, utan att byta sidinnehåll.
Lättast är att lägga den i en egen ram (är det en varukorg?) så löser det sig automatiskt. Du kan uppdatera databasen, och samtidigt visa det nya innehållet.
/T

------------------
"Den som väntar på någon som gått behöver inte vänta längre..."

Medlem sedan feb. 200144 inlägg
#9

Vill inte verka tjatig men "204 No Content" har inget med saken att göra. Samma skit med eller utan.

Kan inte alla börja köra Explorer?

Slutar tjata nu.

Medlem sedan juni 20008 205 inlägg
#10

Kan inte alla börja köra Explorer?

Nej, eftersom Explorer inte finns till alla OS (däribland Linux).

Posten läggs till men timglaset försvinner inte på 10-15 sek.
Vad är det för fel?

Ja, om posten läggs till, vad är det då för fel? Varför inte bara strunta i att Netscapeanvändarna får timglas?
(Att det sen vanligtvis inte är någon bra idé att inte ge användarna respons på att deras förfrågan behandlats är en annan sak, men det finns fstås tillfällen då det är berättigat. Du skulle till exempel köra en redirect till HTTP_REFERER.)

------------------
Crying tears of lead
spangoman - back from the dead!

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)