我是ASP的新手,并且使用ASP而不是ASP.NET来开发项目。
我有一个小应用程序,登录后,用户可以上传.xls文件,然后将此excel文件中的记录插入Access数据库。
我的示例项目文件工作正常,即上传文件并将其插入Access。我的问题是我想要使用特定用户的唯一user_id将该Excel文件中的数据插入Access,因为许多用户可以将Excel文件插入到同一个表中。因此,当用户点击“查看记录”时,他应该只看到他的记录,而不是其他记录。
另一件事是弄清楚如何使用与登录用户相对应的唯一文件名保存文件,以避免重复文件。
这是我从中获取使用文件上传和将Excel数据插入Access的代码的网址:http://shotdev.com/asp/asp-excel/asp-upload-excel-import-to-database/。
答案 0 :(得分:-1)
如果您有用户的登录页面,则将userid存储在会话变量中,然后当用户上传文件时,将会话变量添加到上载文件的插入例程中。
你的表的一个例子是。
tblUsers (userid,myuser,mypasscode)
tblfiles (fileid,filename,filetitle,userid)
对于您的情况,iv'e将userid添加到表列中,并为登录用户添加了会话变量。
For i = 2 To 5
If Trim(xlSheet1.Cells.Item(i,1)) <> "" Then
strSQL = ""
strSQL = strSQL &"INSERT INTO customer2 "
strSQL = strSQL &"(userid, CustomerID,Name,Email,CountryCode,Budget,Used) "
strSQL = strSQL &"VALUES "
strSQL = strSQL &"('& sessionvariable &', "&xlSheet1.Cells.Item(i,1)&"','"&xlSheet1.Cells.Item(i,2)&"', '"&xlSheet1.Cells.Item(i,3)&"' "
strSQL = strSQL &",'"&xlSheet1.Cells.Item(i,4)&"','"&xlSheet1.Cells.Item(i,5)&"', '"&xlSheet1.Cells.Item(i,6)&"') "
Set objExec = Conn.Execute(strSQL)
Set objExec = Nothing
End IF
Next