Avatar billede mekaniker Nybegynder
05. januar 2002 - 02:20 Der er 6 kommentarer og
1 løsning

Invalid class string

Jeg har fundet dette eksempelscript på upload af fil og data her på eksperten.
men jeg kan ikke få det til at virke, jeg får denne fejl:

Error Type:
Server object, ASP 0177 (0x800401F3)
Invalid class string
/jens/filmsite/admin/upload/upload1/Upload2.asp, line 13
------------------------------

min form:
----------
<HTML>
<BODY BGCOLOR=\"#FFFFFF\">
<FORM METHOD=\"POST\" ENCTYPE=\"multipart/form-data\" ACTION=\"Upload2.asp\">
    <INPUT TYPE=FILE SIZE=60 NAME=\"FILE1\">
    <BR>
    <input type=\"text\" name=\"Tekst\">
    Text<br>
    <input type=\"text\" name=\"Navn\">
    Navn<br>
    <input type=\"text\" name=\"Overskrift\">
    Overskrift<br>
    <input type=\"text\" name=\"Kategori\">
    Kategori <br>
    <input type=\"text\" name=\"Nr\">
    Nr<br>
    <INPUT TYPE=SUBMIT VALUE=\"Upload!\">
  </FORM>
</BODY>
</HTML>


Scriptet:
-----------
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
</head>

<body bgcolor=\"#FFFFFF\" text=\"#000000\">
<%

set conn = Server.CreateObject(\"ADODB.Connection\")

   
    Set Upload = Server.CreateObject(\"Persits.Upload.1\")
    Upload.OverwriteFiles = false
      Upload.SetMaxSize 300000, True
      Upload.SaveVirtual (\"/images\")
      set persistfil_billede = upload.files(\"billede\")   

Tekst = upload.form(\"Tekst\")
Tekst = Replace(Tekst, \"\'\", \"\'\'\")

if persistfil_billede is nothing then

conn.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"varer.mdb\")

    conn.Execute(\"insert into billeder(navn, overskrift, kategori, nr, tekst) \" &_
      \"values(\'\" & upload.form(\"navn\") & \"\', \'\" & upload.form(\"overskrift\") & \"\', \'\" & upload.form(\"kategori\") & \"\', \'\" & upload.form(\"nr\") & \"\', \'\" & tekst & \"\')\")
    if Err <> 0 Then
          Response.Write headerfont & \"<br>Der er sket en fejl! : \" & Err.Description
    Else
          Response.Write headerfont & \"<br>Tilføjet...</strong></font>\"
    End If
    conn.Close
    set conn = nothing
   
else

MyConn = \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"varer.mdb\")   

    For Each File in Upload.Files
   
        File.ToDatabase MyConn, \"insert into billeder(billede, navn, overskrift, kategori, nr, tekst) \" &_
        \"values(\'\" & File.ExtractFileName & \"\', \'\" & upload.form(\"navn\") & \"\', \'\" & upload.form(\"overskrift\") & \"\', \'\" & upload.form(\"kategori\") & \"\', \'\" & upload.form(\"nr\") & \"\', \'\" & tekst & \"\')\"
        if Err <> 0 Then
          Response.Write headerfont & \"<br>Der er sket en fejl! : \" & Err.Description
    Else
          Response.Write headerfont & \"<br>Tilføjet...</strong></font>\"
    End If
    Next
   
end if

%>
</body>
</html>


Hvad betyder denne fejl..??, og er der nogle som kan forslå noget reference (litteratur) til asp.
Jeg tænker på noget, hvor man evt. kunne slå fejl op, og få en lidt mere viden herved.

//Mekaniker
Avatar billede erikjacobsen Ekspert
05. januar 2002 - 08:51 #1
Du har vel ikke installeret den komponent der kræves:
  Set Upload = Server.CreateObject(\"Persits.Upload.1\")
Avatar billede mekaniker Nybegynder
05. januar 2002 - 11:19 #2
Nu har jeg aldrig rigtig rodet med uploadning før, men ved du hvor jeg måske kan finde denne upload komponent.

Eller kan man lave dette uden en komponent.

//Mekaniker
Avatar billede erikjacobsen Ekspert
05. januar 2002 - 11:26 #3
Der findes flere komponenter til upload. Kig dig omkring
på http://www.activerserverpages.dk
Avatar billede mekaniker Nybegynder
05. januar 2002 - 11:49 #4
Kan dette laves uden komponent.
//Mekaniker
Avatar billede erikjacobsen Ekspert
05. januar 2002 - 12:33 #5
Rygter, endda vedholdende rygter, siger at det godt kan. Men det står der også
noget om på bemeldte site. Men umiddelbart vil jeg da sige at man bør skaffe
sig de komponenter man skal bruge.
Avatar billede mekaniker Nybegynder
05. januar 2002 - 13:45 #6
Nu har jeg fået det til at virke, ved at installere ASPUpload komponenten.

Men kan du fortælle mig hvordan jeg får skrevet stien til billedet ind i databasen.

Jeg har prøvet med dette:
<%
set conn = Server.CreateObject(\"ADODB.Connection\")

   
    Set Upload = Server.CreateObject(\"Persits.Upload.1\")
    Upload.OverwriteFiles = false
      Upload.SetMaxSize 300000, True
      Upload.SaveVirtual (\"images\")
      set persistfil_billede = upload.files(\"billede\")   

Tekst = upload.form(\"Tekst\")
Tekst = Replace(Tekst, \"\'\", \"\'\'\")

if persistfil_billede is nothing then

conn.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"varer.mdb\")

    conn.Execute(\"insert into billeder(navn, overskrift, kategori, nr, tekst, sti) \" &_
      \"values(\'\" & upload.form(\"navn\") & \"\', \'\" & upload.form(\"overskrift\") & \"\', \'\" & upload.form(\"kategori\") & \"\', \'\" & upload.form(\"nr\") & \"\', \'\" & tekst & \"\', \'\" & file.path & \"\')\")
    if Err <> 0 Then
          Response.Write headerfont & \"<br>Der er sket en fejl! : \" & Err.Description
    Else
          Response.Write headerfont & \"<br>Tilføjet...</strong></font>\"
    End If
    conn.Close
    set conn = nothing
   
else

MyConn = \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"varer.mdb\")   

On Error Resume Next
    For Each File in Upload.Files
   
        File.ToDatabase MyConn, \"insert into billeder(billede, navn, overskrift, kategori, nr, tekst, sti) \" &_
        \"values(\'\" & File.ExtractFileName & \"\', \'\" & upload.form(\"navn\") & \"\', \'\" & upload.form(\"overskrift\") & \"\', \'\" & upload.form(\"kategori\") & \"\', \'\" & upload.form(\"nr\") & \"\', \'\" & tekst & \"\', \'\" & file.path & \"\')\"
        if Err <> 0 Then
          Response.Write headerfont & \"<br>Der er sket en fejl! : \" & Err.Description
    Else
          Response.Write headerfont & \"<br>Tilføjet...</strong></font>\"
    End If
    Next
   
end if

%>

Men jeg får denne fejl:

Error Type:
Microsoft VBScript runtime (0x800A01A8)
Object required: \'\'
/jens/filmsite/admin/upload/upload1/Upload2.asp, line 42

//Mekaniker
Avatar billede mekaniker Nybegynder
05. januar 2002 - 14:44 #7
Tak for oplysningerne, nu har jeg selv fundet ud af det.
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