Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Drivrutin för ODBC Microsoft Access] Operationen måste använda en fråga som kan uppdateras.
/pcdonline/password/check.asp, line 31
När jag förut körde PWS så fungerade det men nu när jag kör IIS så får jag detta meddelande.
Här är koden:
'Skapar koppling till databasen
Set connection = server.createObject("adodb.connection")
connection.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("../../../db/konto.mdb") & ";"
'provar att från databasen hämta en post som stämmer överrens med uppgifterna från formuläret
stm = "SELECT * FROM konto WHERE anvnamn = '"&namn&"' AND losen = '"&losen&"' "
set RS = Connection.Execute(stm)
'Kontrollerar om någon post hämtades(lyckad inloggning)
IF NOT RS.EOF then
'skapar session för att ange att användaren har loggat in
session("inloggad") = "ja"
Session("fel") = ""
If namn = "admin" then
Response.Redirect("../main/login.asp")
Else
SQL = "INSERT INTO log (anvnamn) VALUES('" & namn & "')"
set RS = Connection.Execute(SQL)
Det stämmer nog ganska bra det eftersom databasen ligger under Inetpub i en katalog som heter db och inte under wwwroot.
I PSW fungerade det alldelles utmärkt som sagt men i IIS är det värre. Måste jag då skapa en virtuell webbplats för db katalogen eller hur ska jag gå tillväga?
Nu blev ju detta som från början var en fråga för ASP en fråga för IIS men jag hoppas ändå jag kan få svar här?
i utforskaren så får du högerklicka på mappen (i detta fall mappen db) välja egenskaper/properties och sedan välja tab-fliken behörighet/security lägga till användaren <IUSR_servername> och sätta behörigheten till skriv.
Tack för hjälpen PatrikB, men jag har redan testat detta utan framgång.
Något som jag inte riktigt blir klok på att varje gång jag kör egenskaper på just denna mapp så är den skrivskyddad trots att jag avaktiverar detta varje gång?
Det ser ut som om jag får ändra databasens plats istället?