Der er lige en hage ved scriptet: Det virker fint første gang og sætter alle poster ind, men hvis du senere vil opdatere din database med en tilsvarende liste, tilføjerer det bare alle posterne een gang til. med det resultat at ale dem der var der i forvejen kommer til at stå i databasen en gang mere, hvilket jo er stik imod databasens princip. Jeg vil derfor foreslå, at du for et punkt mere i din komma.sep fil med en action :
fornavn,efternavn,adresselinie1,adresselinie2,postnummer,by,klasse,insert/update/delete (kun en af delene OG det skal være med små bogstaver) og retter scriptet til således:
<!--#include file="adovbs.asp"-->
<%
strDSN = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("database.mdb") 'til en access database
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN
%>
<%
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("kommasepareretfil.txt") 'HUSK at ændre navnet til DIN fil
Set f = fso.OpenTextFile(filespec,1)
Do until f.AtEndOfStream
linie=f.ReadLine
poster=split(linie,",")
if poster(7)="delete" then
Set admind = Server.CreateObject("ADODB.Recordset")
SqlStr = "DELETE FROM TABELNAVN WHERE fornavn='"&poster(0)&"' and efternavn='"&poster(1)&"';"
MyConn.Execute (SqlStr)
Set admind = Nothing
else
If poster(7)="update" then
strSQL = "SELECT * from TABELNAVN where fornavn='"&poster(0)&"' and efternavn='"&poster(1)&"';"
else
strSQL = "SELECT * from TABELNAVN;"
end if
Set admind = Server.CreateObject("ADODB.Recordset")
Set admind = Server.CreateObject("ADODB.Recordset")
admind.Open strsql, MyConn, adOpenStatic, adLockOptimistic
If poster(7)="INSERT" then
admind.AddNew
end if
admind("fornavn") = poster(0)
admind("efternavn") = poster(1)
admind("adresselinie1") = poster(2)
admind("adresselinie2") = poster(3)
admind("postnr") = poster(4)
admind("by") = poster(5)
admind("klasse") = poster(6)
admind.Update
admind.close
end if
Loop
f.Close
%>
På denne måde vil du kune vedligeholde din database ved hjælp af tekstfilen, og de poster der evt. skal slettes ender med delete, de der skl opdateres på update og de nye indsættelser ender på insert. Du kan evt. gemme denn fil med et andet navn end den første fx. vedligehold.asp
Mvh
sMorch