Avatar billede snoezel Nybegynder
16. januar 2003 - 00:17 Der er 29 kommentarer og
1 løsning

SA FileUp upload til DB

Hej.

Er der en venlig sjæl, som skulle have et eksempel på en form, der skriver i en Access Database samtidig med at man oploader et pic til serveren ? URL til billedet, skal samtidig puttes i et tekst felt - kan ikke finde noget eksempel på det.
Avatar billede medions Nybegynder
16. januar 2003 - 00:20 #1
<%
Set Upload = Server.CreateObject("Persits.Upload")
' Gem filer i hukommelsen
Upload.SaveToMemory

Set File = Upload.Files("virtual1")

Path = "d:\home\uodandk\www\test"
'Count = 0
'For Each File in Upload.Files
    if (LCase(Right(File.ExtractFilename, 3)) = "w3g") then
    File.SaveAs Path & "\" & File.ExtractFilename
'    Count = Count + 1
  end if
'Next
Response.Write Count & " fil(er) modtaget."
%>
<%
' Fil objectet !


' Databaseforbindelse
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("replaydb.mdb")
Conn.Open DSN

    filename = file.filename
   
strSQL = "INSERT INTO replay (info, author, filnavn) VALUES ('" & Upload.Form("info") & "','" & Upload.Form("virtual2") & "','" & filename & "')"

' SQL sætning eksekveres
' Din gamle SQL.execute
' Conn.Execute(strSQL)

' Den nye !
File.ToDatabase Connect, strSQL

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

//>Rune
Avatar billede medions Nybegynder
16. januar 2003 - 00:22 #2
Det spm har været oppe 1000 gange her på eksperten.. Søg og du skla finde ;o)

http://www.eksperten.dk/kat/3/?searchtype=txt&words=upload+database&method=and&sort=score&catid=3

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:25 #3
har søgt, jeg prøver det engang :)
Avatar billede medions Nybegynder
16. januar 2003 - 00:25 #4
snoezel> Prøv bare at klik på det link jeg gav ovenfor.. Det er der en masse gode!

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:27 #5
får fejl i linie 2 :(
Avatar billede medions Nybegynder
16. januar 2003 - 00:29 #6
Det er højst sansynlig fordi du ikke har componenten Persits.Upload installeret!

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:44 #7
som subj. siger så er det til SA FileUp komponenten :-)
Er der en der har en sådan upload fil liggende, så vil jeg blive vildt glad, har brugt meget lang tid på det nu, og søger helst ikke mere :-)
Avatar billede medions Nybegynder
16. januar 2003 - 00:45 #8
Kan du ikke bruge andre componenter? -så som ASPUpload?

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:47 #9
desværre, der er kun denne på serveren (danmarks.nu)
Avatar billede medions Nybegynder
16. januar 2003 - 00:51 #10
Hmm ok.. Har du så et script du allerede har lavet i forvejen til uploading af filerne, for så kan vi da lige finde ud af noget med at brygge noget kode sammen..

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:55 #11
jeps, for deres eksempel er udmærket, og det jeg skal bruge, men informationerne skal samtidig skrives i felter i en access database. inkl fil navnet, så jeg kan linke til billedet efterfølgende.
****************************************************

<%@ Language=VBScript %>
<% Option Explicit

'-----------------------------------------------------------------------
'--- FileUp File And Form Upload Sample
'---
'--- This sample demonstrates how to use a form that has both FILE elements
'--- and conventional form elements

'--- Copyright (c) 2002 SoftArtisans, Inc.
'--- Mail: info@softartisans.com http://www.softartisans.com
'-----------------------------------------------------------------------
%>

<HTML>
<HEAD>
<TITLE>SoftArtisans FileUp File And Form Upload Sample</TITLE>
</HEAD>

<BODY>

<H3 ALIGN=center>FileUp File And Form Upload Sample</H3>

<!--

Note: For any form uploading a file, the ENCTYPE="multipart/form-data" And
METHOD="POST" attributes MUST be present

-->
<FORM ACTION="formresp.asp" ENCTYPE="MULTIPART/FORM-DATA" METHOD="POST">
<TABLE align=center BORDER=0>
<TR>
    <TD ALIGN="RIGHT" VALIGN="TOP">Enter Filename:</TD>

<!--
Note: Notice this form element Is of Type="FILE"
-->
    <TD ALIGN="LEFT"><Input Type="FILE" NAME="myFile"><BR>
    <I>Click "Browse" To Select a file To upload</I>
    </TD>
</TR>
<TR>
    <TD ALIGN="RIGHT">Textbox:</TD><TD><Input Type="text" NAME="TextBox" Value="Some text..."></TD>
</TR>
<TR>
    <TD ALIGN="RIGHT">Password:</TD><TD><Input Type="password" NAME="PasswordBox"></TD>
</TR>

<TR>
    <TD ALIGN="RIGHT">Radio:</TD><TD><Input Type="radio" name="RadioBtn" value="FileUp" CHECKED> FileUp <Input Type="radio" name="RadioBtn" value="ExcelWriter"> ExcelWriter</TD>
</TR>
<TR>
    <TD ALIGN="RIGHT">Checks:</TD><TD><Input Type="checkbox" name="CheckBox" value="Red" CHECKED> Red<BR>
    <Input Type="checkbox" name="CheckBox" value="White" CHECKED> White<BR>
    <Input Type="checkbox" name="CheckBox" value="Blue" CHECKED> Blue</TD>
</TR>
<TR>
    <TD ALIGN="RIGHT">DropDown:</TD><TD><Select NAME="DropDown"><Option>Yes<Option>No</Select></TD>
</TR>
<TR>
    <TD ALIGN="RIGHT">MultiSelect:<br>
    <i>(Hold Ctrl To multiselect)<i></TD><TD><Select NAME="MultiSelect" SIZE="3" MULTIPLE>
    <Option SELECTED>ASP<Option>ASP.NET<Option SELECTED>C#<Option>VB.NET</Select>
</TR>
<TR>

<TR>
    <TD ALIGN="RIGHT">&nbsp;</TD>
    <TD ALIGN="LEFT"><Input Type="SUBMIT" NAME="SUB1" VALUE="Upload File"></TD>
</TR>
</TABLE>
</FORM>

</BODY>
</HTML>
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:55 #12
Det må meget gerne være en DSNLess forbindelse.
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:57 #13
øverste fil, kalder så denne side:
**********************************
<%@ Language=VBScript %>
<% Option Explicit %>

<HTML>
<HEAD>
<TITLE>SoftArtisans FileUp File And Form Upload Sample</TITLE>
</HEAD>
<BODY>

<%
'-----------------------------------------------------------------------
'--- FileUp File And Form Upload Sample
'---
'--- This sample demonstrates how to perform a single file upload
'--- with FileUp, and display many properties of the file to the user

'--- This is the ASP form-response script that uses FileUp to receive and
'--- process the upload submitted from form.asp

'--- Copyright (c) 2002 SoftArtisans, Inc.
'--- Mail: info@softartisans.com http://www.softartisans.com
'-----------------------------------------------------------------------

    '--- Declarations
    Dim oFileUp
    Dim i
    Dim subitem

    '--- Instantiate the FileUp object
    Set oFileUp = Server.CreateObject("SoftArtisans.FileUp")

    '--- Set the Path property to the location you wish to
    '--- temporarily cache the incoming file before saving
    '--- Note: This property must be set immediately after
    '--- instantiating the FileUp object
    oFileUp.Path = Server.MapPath(Application("vroot") & "/temp")

    '--- First, we'll handle the file
   
    '--- Check to be sure there was a file selected in the form
    '--- If so, continue processing
    If Not oFileUp.Form("myFile").IsEmpty Then
   
        '--- Save the file
        '--- Note: The Save() method saves the file
        '--- with its original name to the directory
        '--- you set as the Path property.
        '--- To save a file to a different location
        '--- or with a different name, use the SaveAs() method
        '--- instead of Save()
        oFileUp.Form("myFile").Save

        '--- The file is saved, display a confirmation message
        Response.Write("<DIV ALIGN=center><B>File saved successfully on the server.</B></DIV>")
        Response.Write("<HR NOSHADE>")

        '--- Display file information in a HTML table
        Response.Write("<TABLE BORDER=1 ALIGN=center CELLSPACING=1 CELLPADDING=1>")

        '--- The ServerName property is the full path of the file as it was
        '--- saved on the server
        Response.Write("<TR><TD><B>File path on server</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").ServerName & "</TD></TR>")
       
        '--- UserFileName is the full path of the file from the client's computer
        Response.Write("<TR><TD><B>Original file path</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").UserFileName & "</TD></TR>")
       
        '--- ShortFileName is the original file name
        Response.Write("<TR><TD><B>Original file name</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").ShortFileName & "</TD></TR>")
       
        '--- TotalBytes is the total byte size of the file
        Response.Write("<TR><TD><B>Byte size of file</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").TotalBytes & "</TD></TR>")

        Response.Write("</TABLE>")

    Else
        '--- If there was no file submitted, just show a message
        Response.Write("Error: There was no file submitted for upload.")
    End If

    '--- Display the contents of the rest of the form elements
   
    Response.Write("<DIV ALIGN=center><H3>Non-file form elements</H3>")

    '--- The following four form elements are single-selections
    '--- There an only be one value selected per form item

    '--- Display file information in a HTML table
    Response.Write("<TABLE BORDER=1 ALIGN=center CELLSPACING=1 CELLPADDING=1>")

    '--- Text Box
    Response.Write("<TR><TD><B>Text box</B></TD><TD>" & oFileUp.Form("TextBox") & "</TD></TR>")
    '--- Password Box
    Response.Write("<TR><TD><B>Password</B></TD><TD>" & oFileUp.Form("PasswordBox") & "</TD></TR>")
    '--- Radio button
    Response.Write("<TR><TD><B>Radio Button</B></TD><TD>" & oFileUp.Form("RadioBtn") & "</TD></TR>")
    '--- Drop-Down
    Response.Write("<TR><TD><B>DropDown Listbox</B></TD><TD>" & oFileUp.Form("DropDown") & "</TD></TR>")

    '--- The following two form elements are "subcollections"
    '--- Multiple values can be selected in the checkbox bank and the multi-select box
    '--- To access the values of subcollections, use the FormEx collection instead of Form

    '--- Iterate through subcollections using a ForEach loop like this
    Response.Write("<TR><TD><B>CheckBoxes</B></TD><TD>")
    For Each subitem In oFileUp.FormEx("CheckBox")
        Response.Write(subitem & "<BR>")
    Next
    Response.Write("</TD></TR>")

    '--- Or a For loop like this
    Response.Write("<TR><TD><B>MultiSelect</B></TD><TD>")
    For i = 1 To oFileUp.FormEx("MultiSelect").Count
        Response.Write(oFileUp.FormEx("MultiSelect")(i) & "<BR>")
    Next
    Response.Write("</TD></TR>")

    Response.Write("</TABLE></DIV>")

    '--- Destroy objects
    Set oFileUp = Nothing
%>


</BODY>
</HTML>
Avatar billede medions Nybegynder
16. januar 2003 - 00:57 #14
Hmm du har ikke givet mig modtagningsparten med!

-der må være en fil mere der hedder formresp.asp!

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:58 #15
det virker fint det hele, mangler så bare at den skriver de samme informationer i en access database :)
Avatar billede snoezel Nybegynder
16. januar 2003 - 00:59 #16
jep, den kom der medions :)
Avatar billede medions Nybegynder
16. januar 2003 - 01:03 #17
**********************************
<%@ Language=VBScript %>
<% Option Explicit %>

<HTML>
<HEAD>
<TITLE>SoftArtisans FileUp File And Form Upload Sample</TITLE>
</HEAD>
<BODY>

<%
'-----------------------------------------------------------------------
'--- FileUp File And Form Upload Sample
'---
'--- This sample demonstrates how to perform a single file upload
'--- with FileUp, and display many properties of the file to the user

'--- This is the ASP form-response script that uses FileUp to receive and
'--- process the upload submitted from form.asp

'--- Copyright (c) 2002 SoftArtisans, Inc.
'--- Mail: info@softartisans.com http://www.softartisans.com
'-----------------------------------------------------------------------

    '--- Declarations
    Dim oFileUp
    Dim i
    Dim subitem

    '--- Instantiate the FileUp object
    Set oFileUp = Server.CreateObject("SoftArtisans.FileUp")

    '--- Set the Path property to the location you wish to
    '--- temporarily cache the incoming file before saving
    '--- Note: This property must be set immediately after
    '--- instantiating the FileUp object
    oFileUp.Path = Server.MapPath(Application("vroot") & "/temp")

    '--- First, we'll handle the file
   
    '--- Check to be sure there was a file selected in the form
    '--- If so, continue processing
    If Not oFileUp.Form("myFile").IsEmpty Then
   
        '--- Save the file
        '--- Note: The Save() method saves the file
        '--- with its original name to the directory
        '--- you set as the Path property.
        '--- To save a file to a different location
        '--- or with a different name, use the SaveAs() method
        '--- instead of Save()
        oFileUp.Form("myFile").Save

        '--- The file is saved, display a confirmation message
        Response.Write("<DIV ALIGN=center><B>File saved successfully on the server.</B></DIV>")
        Response.Write("<HR NOSHADE>")

        '--- Display file information in a HTML table
        Response.Write("<TABLE BORDER=1 ALIGN=center CELLSPACING=1 CELLPADDING=1>")

        '--- The ServerName property is the full path of the file as it was
        '--- saved on the server
        Response.Write("<TR><TD><B>File path on server</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").ServerName & "</TD></TR>")
       
        '--- UserFileName is the full path of the file from the client's computer
        Response.Write("<TR><TD><B>Original file path</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").UserFileName & "</TD></TR>")
       
        '--- ShortFileName is the original file name
        Response.Write("<TR><TD><B>Original file name</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").ShortFileName & "</TD></TR>")
       
        '--- TotalBytes is the total byte size of the file
        Response.Write("<TR><TD><B>Byte size of file</B></TD>")
        Response.Write("<TD>" & oFileUp.Form("myFile").TotalBytes & "</TD></TR>")

        Response.Write("</TABLE>")
       
       
        '--- Pasting to the Access database...
        Set objConn = Server.CreateObject("ADODB.Connection")
        objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\sti\til\database\db.mdb;"
       
        strSQL = "INSERT INTO tblFiler (Filnavn, Filstorrelse) VALUES ('" & oFileUp.Form("myFile").ShortFileName & "', '" & oFileUp.Form("myFile").TotalBytes & "')"
        objConn.Execute(strSQL)

    Else
        '--- If there was no file submitted, just show a message
        Response.Write("Error: There was no file submitted for upload.")
    End If

    '--- Display the contents of the rest of the form elements
   
    Response.Write("<DIV ALIGN=center><H3>Non-file form elements</H3>")

    '--- The following four form elements are single-selections
    '--- There an only be one value selected per form item

    '--- Display file information in a HTML table
    Response.Write("<TABLE BORDER=1 ALIGN=center CELLSPACING=1 CELLPADDING=1>")

    '--- Text Box
    Response.Write("<TR><TD><B>Text box</B></TD><TD>" & oFileUp.Form("TextBox") & "</TD></TR>")
    '--- Password Box
    Response.Write("<TR><TD><B>Password</B></TD><TD>" & oFileUp.Form("PasswordBox") & "</TD></TR>")
    '--- Radio button
    Response.Write("<TR><TD><B>Radio Button</B></TD><TD>" & oFileUp.Form("RadioBtn") & "</TD></TR>")
    '--- Drop-Down
    Response.Write("<TR><TD><B>DropDown Listbox</B></TD><TD>" & oFileUp.Form("DropDown") & "</TD></TR>")

    '--- The following two form elements are "subcollections"
    '--- Multiple values can be selected in the checkbox bank and the multi-select box
    '--- To access the values of subcollections, use the FormEx collection instead of Form

    '--- Iterate through subcollections using a ForEach loop like this
    Response.Write("<TR><TD><B>CheckBoxes</B></TD><TD>")
    For Each subitem In oFileUp.FormEx("CheckBox")
        Response.Write(subitem & "<BR>")
    Next
    Response.Write("</TD></TR>")

    '--- Or a For loop like this
    Response.Write("<TR><TD><B>MultiSelect</B></TD><TD>")
    For i = 1 To oFileUp.FormEx("MultiSelect").Count
        Response.Write(oFileUp.FormEx("MultiSelect")(i) & "<BR>")
    Next
    Response.Write("</TD></TR>")

    Response.Write("</TABLE></DIV>")

    '--- Destroy objects
    Set oFileUp = Nothing
%>


</BODY>
</HTML>


Husk at lav stien om så den passer til der hvor du har placeret databasen!

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:05 #18
det var godt nok hurtigt, gemmer den alle felter i DB nu ?
Avatar billede medions Nybegynder
16. januar 2003 - 01:06 #19
;o)
Nej, du kan se hvad jeg laver her:

        '--- Pasting to the Access database...
        Set objConn = Server.CreateObject("ADODB.Connection")
        objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\sti\til\database\db.mdb;"
       
        strSQL = "INSERT INTO tblFiler (Filnavn, Filstorrelse) VALUES ('" & oFileUp.Form("myFile").ShortFileName & "', '" & oFileUp.Form("myFile").TotalBytes & "')"
        objConn.Execute(strSQL)

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:10 #20
jeg må være træt nu, hvad skal jeg ændre fra nu af, for at alle felter bliver skrevet i DB.MDB :)
Avatar billede medions Nybegynder
16. januar 2003 - 01:12 #21
Stien som er c:\sti\til\database\db.mdb nu, den skal du ændre til der hvor din Database ligger!

og så skal du oprette / redigere de felter du har i din database så de hedder det samme som dem i din SQL statement! -altså du skal ha' 2 kolonner i en tabel du kalder tblFiler, som skal hedde Filnavn og Filstorrelse...

Held og lykke med det... ;o)

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:17 #22
takker, jeg vender måske tilbage, jeg vil prøve det engang :-)
Avatar billede medions Nybegynder
16. januar 2003 - 01:17 #23
OK :-)

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:26 #24
Det er da kun filen: formresp.asp  -du har rettet i ik ?? :-)
Avatar billede medions Nybegynder
16. januar 2003 - 01:27 #25
Jov :-)

//>Rune
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:31 #26
Får nemlig denne fejl, men den ligger sq der :-)

Fejltype:
Microsoft JET Database Engine (0x80004005)
"c:\wwwroot\inetpub\upload_ny\uploaddb.mdb" er ikke en gyldig sti. Kontroller, at stinavnet er stavet korrekt, og at du er tilsluttet den server, hvor filen findes.
/upload_ny/formresp.asp, line 83
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:32 #27
og så skulle jeg lige dim´e objConn
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:33 #28
det er selvfølgelig omvendt:
inetpub/wwwroot
Avatar billede snoezel Nybegynder
16. januar 2003 - 01:39 #29
Det virker nu med de 2 felter, takker mange gang, nu håber jeg at jeg kan lave de andre selv :-))
Avatar billede medions Nybegynder
16. januar 2003 - 07:07 #30
Anytime ;o)
Thx 4 Poinz

//>Rune
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