tjenare..
jag försöker nämligen göra så att man ska kunna lägga upp bilder och att allt sparas i databasen. Det fungerar bra, förutom ifall man har möjlighet att lägga till sex bilder fast endast har en bild att lägga upp, då blir de andra formulärerna toma, och då fungerar det inte.
så försökte jag mig på, något som inte alls fungerar, här är senaste koden.
mina formulär heter filen, filen1, filen2 och så vidare fram till filen6.
<%
' nedan publicear bilden för första bilden
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.SetMaxSize 100000 ' Ändra maxstorlek på uppladdad fil
Upload.SaveVirtual "bilder/" ' Mappen som uppladdade filer hamnar i
Upload.OverwriteFiles = True ' Sätt till False om du inte vill spara över filer med samma namn
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("databasen.mdb")&";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From filer"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
RecSet.AddNew
Recset("datum") = Date()
Recset("bildone") = Upload.Files(1).ExtractFileName
Recset("bildtwo") = Upload.Files(2).ExtractFileName
if Upload.Files(3).ExtractFileName ="" then
else
Recset("bildthree") = Upload.Files(3).ExtractFileName
end if
if Upload.Files(4).ExtractFileName ="" then
else
Recset("bildfour") = Upload.Files(4).ExtractFileName
end if
if Upload.Files(5).ExtractFileName ="" then
else
Recset("bildfive") = Upload.Files(5).ExtractFileName
end if
if Upload.Files(6).ExtractFileName ="" then
else
Recset("bildsix") = Upload.Files(6).ExtractFileName
end if
RecSet.Update
RecSet.close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
%>
Du måste kolla Upload.Files.Count innan du börjar att hämta ut filerna. Mn kan inte hämta Upload.Files(4) och det inte finns så många filer.
En enkel variant är ju att du loopar
for i=1 to Upload.Files.Count
filename=Upload.Files(i).ExtractFileName
colname=""
select case i
case 1
colname="bildone"
case 2
colname="bildtwo"
etc.
end select
Recset(colname)=filename
next
Nu såg jag hur du namngivit fälten också, så då blir det lämpligare att skriva
if not Upload.Files("filen") is nothing then
Recset("bildone") = Upload.Files("filen").ExtractFileName
end if
if not Upload.Files("filen2") is nothing then
Recset("bildtwo") = Upload.Files("filen2").ExtractFileName
end if
emission, jag vill tacka dig för hjälpen, otroligt sjyst av dig att hjälpa mig.
det konstiga är nu att jag avslutar min kod på följande sätt:
RecSet.Update
RecSet.close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
Response.Redirect "information.asp?about=genomfor"
%>
när jag har response.redirect "default.asp"
då fungerar det.
fast när jag har response.redirect "information.asp?about=genomfor" då får jag upp sidan kan inte visas.
någon som har stött på problemet tidigare?.
Fungerar det att gå direkt till sidan information.asp?about=genomfor ? Om sidan finns så låter som om du har "egna felmeddelanden" påslagna i Internet Explorer. Använd en annan webbläsare, eller avaktivera dessa felmeddelanden under IE:s inställningar (Friendly Errors).