Avatar billede michael_stim Ekspert
10. april 2003 - 13:03 Der er 22 kommentarer og
1 løsning

ASPSmartupload igen igen

OK jeg pröver igen.
Jeg skal bruge et script der lägger to billeder (stort + lille) i en mappe("bilder") på serveren. Stien til det lille billede skal så lägges i en access database, hvor der allerede er en eksisterende tabel.

Jeg har kikket lidt på det, men får ikke rigtigt styr på lortet. Medsender noget af koden men läg ikke for stor vägt på save.asp

_____________________addPic.asp_________________________

<form METHOD="POST" ACTION="save.asp" NAME="PW" ENCTYPE="multipart/form-data">
  <table CELLSPACING="0" CELLPADDING="3" BORDER="0" WIDTH="474">
<input type="hidden" name="kategori" value='<%=Cat%>'>
<input type="hidden" name="model" value='<%request.form("modell")%>'>
<!-- FILE -->
    <tr>
      <td width="55"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Stor
        bild:</font></td>
      <td width="407"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
        <input TYPE="file" name="FILE1" class="knappred"></font></td>
    </tr>

    <tr>
      <td width="55"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Thumbnail:</font></td>
      <td width="407"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
        <input TYPE="file" name="FILE2" class="knappred"></font></td>
    </tr>

<!-- SUBMIT -->
    <tr>
      <td width="55"></td>
      <td width="407">
        <input TYPE="Submit" class="knappred" value="Spara"></td>
    </tr>
  </table>
</form>

<table width="360" border="0" cellpadding="0" cellspacing="5">
  <tr align="left" valign="top">
    <td align="center"><img src="../bilder/1x1_cccccc.gif" width="350" height="1"></td>
  </tr>
</table>
</body>
</html>
_____________________Slut addPic.asp______________________

_____________________save.asp______________________________

<%@Language="VBScript"%>

<html>
<head>
<title>aspSmartUpload : Sample 1</title>
</head>

<body>
<h1>aspSmartUpload : Sample 1</h1>
<hr>

<%
'Variables
'  *********
  Dim mySmartUpload
  Dim intCount
  Dim prod
  Dim mod

'  Object creation
'  ***************
  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

'  Upload
'  ******
mySmartUpload.Upload

set conn = server.CreateObject("ADODB.CONNECTION")
DSN = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("..\db\eldAdmin.mdb")
conn.Open DSN
prod = mySmartUpload.form("kategori")
mod = mySmartUpload.form("model")
strSQL="UPDATE " & prod & " SET [billedsti] = " & fileName & " where model = " & mod & "

'  Save the files with their original names in a virtual path of the web server
'  ****************************************************************************
  'intCount = mySmartUpload.Save("/aspSmartUpload/Upload")
  ' sample with a physical path
  intCount = mySmartUpload.Save("d:\domains\eldmakaren.se\informo\bilder")

'  Display the number of files uploaded
'  ************************************
  Response.Write(intCount & " file(s) uploaded.")
%>

</body>
</html>
____________________ slut save.asp ______________________
Avatar billede dk_akj Nybegynder
10. april 2003 - 13:12 #1
Hvor meget af det virker ??

//akj
Avatar billede michael_stim Ekspert
10. april 2003 - 13:22 #2
Ikke så meget skulle jeg gätte på :-D, jeg fatter ikke koden. Men du har frie händer.
//Michael
Avatar billede dk_akj Nybegynder
10. april 2003 - 13:23 #3
Kommer filerne op på serveren ??

//akj
Avatar billede michael_stim Ekspert
10. april 2003 - 13:24 #4
Jeg kan f.eks ikke se hvor navnet på filen gemmer sig osv osv.
Avatar billede michael_stim Ekspert
10. april 2003 - 13:24 #5
nix
Avatar billede dk_akj Nybegynder
10. april 2003 - 14:20 #6
Her er en "ny" save.asp

Jeg har ikke så godt tid idag men her er lidt du kan kigge på / rode videre med.

Den gemmer billederne i samme folder som save.asp ligger i.

//akj


<HTML>
<BODY BGCOLOR="white">

<H1>aspSmartUpload : Sample 5</H1>
<HR>

<%
'  Variables
'  *********
  Dim mySmartUpload
  Dim item
  Dim value
  Dim file
       
'  Object creation
'  ***************
  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

'  Upload
'  ******
  mySmartUpload.Upload

'  FILES Collection
'  ****************
  Response.Write("<BR><STRONG>Files Collection</STRONG><BR>")

'  Informations about files
'  ************************
  Response.Write("Number of files =" & mySmartUpload.Files.count &"<BR>")
  Response.Write("Total bytes of files =" & mySmartUpload.Files.TotalBytes &"<BR>")

'mySmartUpload.files.item(1).saveas "D:\web\wwwroot\su\test.jpg"

' gem fil 1
filnavn1 = "test1.jpg"
mySmartUpload.files.item(1).saveas server.mappath(".") & "\" & filnavn1

dbfilnavn1 = server.mappath(".") & "\" & filnavn1

' gem fil 2 (thumb)
filnavn2 = "test1_thumb.jpg"
mySmartUpload.files.item(2).saveas server.mappath(".") & "\" & filnavn2

dbfilnavn2 = server.mappath(".") & "\" & filnavn2

'  FORM Collection
'  ***************
  Response.Write("<BR><STRONG>Form Collection</STRONG><BR>")
kat = mySmartUpload.Form("kategori")
response.write "kat = " & kat & "<br>"

model = mySmartUpload.Form("model")
response.write "model = " & model & "<br>"

sql = "insert into tabel ( filnavn,kat,model    ) values ('" & dbfilnavn2 & "','" & kat & "','" & model & "')"

response.write sql
'conn.execute sql

%>
</BODY>
</HTML>
Avatar billede michael_stim Ekspert
10. april 2003 - 14:21 #7
Selvom jeg tager eksemplerne og kopierer dem så fungerer det ikke. Har ringet til webhotellet og de siger det skal fungere, men jeg får "internt serverfejl" hele tiden.
Avatar billede michael_stim Ekspert
10. april 2003 - 14:22 #8
ok akj.
tak så länge.
//Michael
Avatar billede michael_stim Ekspert
11. april 2003 - 12:38 #9
OK det fungerer med denne kode (foruden model i formcollectionen), det var åbenbart webhotellet der ikke godtog fysiske stier og så havde de "glemt" at acceptere den virtuelle sti eller hvad man siger.

<HTML>
<BODY BGCOLOR="white">

<H1>aspSmartUpload : Sample 5</H1>
<HR>

<%
'  Variables
'  *********
  Dim mySmartUpload
  Dim item
  Dim value
  Dim file
  Dim intCount

'  Object creation
'  ***************
  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

'  Upload
'  ******
  mySmartUpload.Upload

'  FILES Collection
'  ****************
  Response.Write("<BR><STRONG>Files Collection</STRONG><BR>")

'  Informations about files
'  ************************
  Response.Write("Number of files =" & mySmartUpload.Files.count &"<BR>")
  Response.Write("Total bytes of files =" & mySmartUpload.Files.TotalBytes &"<BR>")

'mySmartUpload.files.item(1).saveas "D:\web\wwwroot\su\test.jpg"

' gem fil 1
filnavn1 = "test1.jpg"
intCount = mySmartUpload.Save("/aspSmartUpload/Upload")


'  FORM Collection
'  ***************
  Response.Write("<BR><STRONG>Form Collection</STRONG><BR>")
kat = mySmartUpload.Form("kategori")
response.write "kat = " & kat & "<br>"

model = mySmartUpload.Form("model")
response.write "model = " & model & "<br>"

sql = "insert into tabel ( filnavn,kat,model    ) values ('" & dbfilnavn2 & "','" & kat & "','" & model & "')"

response.write sql
'conn.execute sql

%>
</BODY>
</HTML>

Nu skal jeg så have lagt stien ind i databasen.
strSQL = "update " & kat & " set billedsti = " & ?? & " where model = " & model & "
Og når det er gjort skal jeg så kalde på tabellen på den side hvor man skal have billedet. Men jeg har et par funderinger.
Skal datatypen i "billedsti" väre hyperlink?
Hvor lägger billederne sig? jeg skal jo kalde på det store billed fra thumbnailen.
Avatar billede dk_akj Nybegynder
11. april 2003 - 13:01 #10
Du skal nok gøre sådan her:
' upload filer
mySmartUpload.Upload

' gem i underkatalog upload
intCount = mySmartUpload.Save("./upload")

' filnavn på det store billede
billedfilnavn = mySmartUpload.files.item(1).filename

' filnavn på thumbnail filnavnet er så det filnavn bruger har Uploadet *
thumbfilnavn = mySmartUpload.files.item(2).filename

' byg sql streng
strSQL = "update " & kat & " set billedsti = '" & thumbfilnavn & "' where model = " & model & "

* (f.eks xyz.jpg) det er så selve filnavnet UDEN STI der gemmes i databasen. Når du skal bruge filen sætter du stien ind f.eks: response.write "<img src=./upload/" &rs("filnavn")& ">

//akj
Avatar billede michael_stim Ekspert
11. april 2003 - 13:25 #11
aspSmartUpload.File error '80040460'

Unable to save file (Error 1120)

/informo/admin/save.asp, line 34

//Line 34 = intCount = mySmartUpload.Save("./upload")
Avatar billede dk_akj Nybegynder
11. april 2003 - 13:26 #12
har du en subfolder til den folder hvor save.asp ligger i der hedder "upload"
altså informo/admin/upload og har du skriverettigheder til den ??

//akj
Avatar billede michael_stim Ekspert
11. april 2003 - 13:28 #13
Man kan vel bare göre sådan her:

mySmartUpload.Save("/aspSmartUpload/Upload")

"<img src=/aspSmartUpload/upload/" &rs("filnavn")& ">, eller?
Avatar billede dk_akj Nybegynder
11. april 2003 - 13:29 #14
jeps :-)

maske skal du have . foran /
altså:
mySmartUpload.Save("./aspSmartUpload/Upload")

"<img src=./aspSmartUpload/upload/" &rs("filnavn")& ">
Avatar billede michael_stim Ekspert
11. april 2003 - 13:29 #15
Jeg tror ikke de accepterer det på webhotellet, de må ha en folder med navnet upload, eller?
Avatar billede michael_stim Ekspert
11. april 2003 - 13:31 #16
Det fungerer uden '.'
Avatar billede dk_akj Nybegynder
11. april 2003 - 13:33 #17
Du skal vha ftp eller lign oprette en folder på dit webhotel.
Så skal du kontakte dit webhotel og bede dem give iusr_xxx skriverettigheder på folderen, sig at du skal bruge den til at uploade filer til, så ved de hvad de skal.

//akj
Avatar billede michael_stim Ekspert
11. april 2003 - 13:50 #18
Så nu fungere alt, men model i form collection spöger stadig.

Her er hele formen (indeholder kun en dd-box), men jeg kan ikke få värdien af dd-boxen ud.

<form method="post" name="modelform">
  <table border="0" cellspacing="0" cellpadding="0" width="19%">
    <tr>
      <td width="21%"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Modell:
        </font></td>
      <td width="79%"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">
        <select name="modellist" class="cellkantred">

        <%


        set conn = server.CreateObject("ADODB.CONNECTION")
        DSN = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("..\db\eldAdmin.mdb")
        conn.Open DSN
        Dim Cat,modell,mode

        Cat=request.form("cat")
        %>

        <option selected>Välj modell</option>
        <%
        if Cat <> "" then
            if Cat="flamdekorationer" or Cat="gaseldadeBrasor" then
                modell="model"
                strSQL = "SELECT "&modell&" FROM "&Cat&""
            end if
            if Cat="gaseldadeOppnaSpisar" then
                modell="namn"
                strSQL = "SELECT "&modell&" FROM "&Cat&""
            end if
            if Cat="utrustning" then
                modell="produkt"
                strSQL = "SELECT "&modell&" FROM "&Cat&""
            end if

        ' SQL sætning eksekveres

        set RS = conn.execute(strSQL)
        do while not rs.EOF
        %>
        <option value='<%=rs(modell)%>'><%=rs(modell)%></option>
        <%
        rs.moveNext
        loop
        conn.close
        end if
        mode = modellist
        %>
      </select>
      </font></td>
  </tr>
</table>
  <br>
</form>
Avatar billede michael_stim Ekspert
11. april 2003 - 13:52 #19
Har prövet med mode = request.form("modelform") og
mode = request.form("modellist")
Avatar billede dk_akj Nybegynder
11. april 2003 - 13:53 #20
model = MySmartUpload.form("modellist")

//akj
Avatar billede michael_stim Ekspert
11. april 2003 - 14:30 #21
Hjälper lige fedt :(
model = MySmartUpload.form("modellist")
model = MySmartUpload.form("modelform")
Er nöd til at gå nu men vender tilbage i weekenden hvis du er der, ellers på mandag.
Tak for hjälpen så länge og god weekend.
//Michael
Her er de 200 point men som sagt så skal du have 100 mere. De kommer senere.
Avatar billede dk_akj Nybegynder
11. april 2003 - 14:32 #22
Jeg skal IKKE have mere end 200 pts. Vi forstætter i denne tråd til det virker.

God weekend
//akj
Avatar billede eculeus Nybegynder
09. marts 2005 - 13:47 #23
Hvis du skal bruge de små billeder til thumbnails for de store, hvorfor bruger du så ikke aspimage istedet?
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