Avatar billede dp2001 Juniormester
02. marts 2003 - 17:47 Der er 6 kommentarer og
1 løsning

AspSmartUpload + Formular

Jeg skal til at kigge på noget med AspSmartUpload.

Jeg har en formular, hvor man kan banke oplysninger om forskellige medier ind (CD, DVD, SVCD og VHS). Samtidig skal man så kunne uploade front- og back-cover til mediet(ved oprettelse).

Jeg gemmer oplysningerne i en tabel, men filerne vil jeg gerne smide op i en virtuel mappe og navngive på følgende måde:

sti = "/images/" & medie
front = rs("id") & "f" & extension
back = rs("id") & b & extension

- Hvor rs("id") er det "kommende" id.

Jeg vil gerne kunne gemme fil-extension i databasen også.

Jeg går udfra, at jeg skal bruge metoden SaveAs. Men:

1) Kan jeg overhovedet finde ud af, hvad næste rs("id") bliver?
2) Skal jeg først lave rs.AddNew og derefter MySmartUpload? Eller omvendt?

Hvis der er nogle der har et godt eksempel, er de selvfølgelig også velkomne.
Avatar billede eagleeye Praktikant
02. marts 2003 - 21:52 #1
Ja eks dette er godt nok til ASPUpload men samme princip:


Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.SaveToMemory    'Save to memory

Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM tabel WHERE (ID = 0)"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../log/database.mdb")
rstemp.Open strSQL, strDSN, 1, 3

strTitel = Upload.Form("Titel")
strTekst = Upload.Form("Tekst")

rs.AddNew
rs("Tite") = strTitel
rs("Tekst") = Replace(strTekst, vbCrLf, "<br>")
rs.Update
id = rs("id")

Set file = Upload.Files("FILE1")
file.SaveAsVirtual "/www/jpg/" & id & "." & file.Ext
Avatar billede dp2001 Juniormester
02. marts 2003 - 22:47 #2
Tak - det vil jeg lige prøve mig frem med.

Hvad sikrer følgende...

Replace(strTekst, vbCrLf, "<br>")

?
Avatar billede eagleeye Praktikant
02. marts 2003 - 22:51 #3
Den laver Return-tasten fra et textarea om til HTML return. Når man laver linieskift i et textarea kommer der et "usynlig" karakter vbCrLf som også er linieskift i notepad, men på HTML side er linieskift <br>.
Avatar billede dp2001 Juniormester
03. marts 2003 - 20:53 #4
Jeg har brug for lidt hjælp til at komme videre.

Er meget i tvivl omkring de rigtige syntakser (jeg benytter AspSmartUpload) og om hvordan jeg sikrer mig, at jeg får extension gemt i hhv. c1e, c2e og c3e.

Hér er hvad jeg har lavet foreløbig...

----------------
<%
Session.LCID = 1030

Response.Write "<html>"
Response.Write "<head>"
Response.Write "<title></title>"
Response.Write "<link rel='stylesheet' href='layout/3.css' type='text/css' media='screen'>"
Response.Write "<link rel='stylesheet' href='layout/3p.css' type='text/css' media='print'>"
Response.Write "</head>"
Response.Write "<body>"
Response.Write "<div id='menu'>"
%>
<!--#include virtual='/oddsrus/discoteket.asp'-->
<%
Response.Write "</div>"

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.Upload

medie = UpLoad.Form("medie")

Select Case medie

Case "CD"

Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM tabel WHERE (CD_id = 0)"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("baser/medie-test-db.mdb")
rstemp.Open strSQL, strDSN, 1, 3

strKunstner = Upload.Form("kunstner")
strTitel = Upload.Form("titel")
strTekst = Upload.Form("Tekst")
strKategori = Upload.Form("kategori")
strAar = Upload.Form("aar")
strLaengde = Upload.Form("laengde")
strKommentar = Upload.Form("kommentar")
strURL = Upload.Form("url")
strDiscs = Upload.Form("discs")
strKopi = Upload.Form("kopi")
strMp3konv = Upload.Form("mp3_konv")
strC1 = rs("id")
strC2 = rs("id")
strC3 = rs("id")
strC1e = file(1).Ext
strC2e = file(2).Ext
strC3e = file(3).Ext

rs.AddNew
CD_id = rs("id")
rs("init") = Session("loginid")
rs("kunstner") = strKunstner
rs("titel") = strTitel
rs("kategori") = strKategori
rs("aar") = strAar
rs("laengde") = strLaengde
rs("url") = strURL
rs("vurdering") = strVurdering
rs("kommentar") = strKommentar
rs("dato_insert") = Date() & " " & Time()
rs("dato_update") = Date() & " " & Time()
rs("discs") = strDiscs
if strKopi = "on" then
rs("kopi") = True
else
rs("kopi") = False
end if
if strMp3konv = "on" then
rs("mp3_konv") = True
else
rs("mp3_konv") = False
end if
rs("c1") = strC1
rs("c2") = strC2
rs("c3") = strC3
rs("c1e") = strC1e
rs("c2e") = strC2e
rs("c3e") = strC3e
rs.Update

Set file = myUpload.Files("file1")
file.SaveAs "discoteket/covers/" & medie & "/" & id & "f." & file.Ext
Set file = myUpload.Files("file2")
file.SaveAs "discoteket/covers/" & medie & "/" & id & "f." & file.Ext
Set file = myUpload.Files("file3")
file.SaveAs "discoteket/covers/" & medie & "/" & id & "f." & file.Ext


link = "discoteket_start.asp"
response.redirect (link)

Case Else

Response.Write "Ukendt medie!"

End Select

%>
</body>
</html>
Avatar billede eagleeye Praktikant
03. marts 2003 - 21:02 #5
For at få fil efternanvet skal denne bruged:  .FileExt

Så disse skal:
strC1e = file(1).Ext

Laves som:

Set file1 = Upload.Files(1)  'Det muligt den starter fra 0.
strC1e = file1.FileExt
Avatar billede dp2001 Juniormester
03. marts 2003 - 22:33 #6
Har problemer ved afvikling...

Error Type:
Server object, ASP 0177 (0x8007007E)
8007007e
/oddsrus/mi.asp, line 17

Linje 17:

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

- det burde vel være godt nok?
Avatar billede eagleeye Praktikant
03. marts 2003 - 23:03 #7
hmm du har ASPsmartUpload installeret?

Det eneste jeg kan finde er dette:
http://support.microsoft.com/default.aspx?scid=KB;en-us;q273744
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester