Avatar billede Slettet bruger
28. maj 2002 - 02:24 Der er 16 kommentarer og
1 løsning

Response.Contentype

Hejsa,

Jeg er ved at lege lidt med en billededatabase men har dog et problem.

Hvis jeg ikke sætter nogen content type skriver den alt data'en rigtigt ud:
|ƒ‹’š¡©±¹ÁÉÑÙáéòú osv. (text/plain?)

Men når jeg sætter den til
Response.ContentType = "image/jpeg" fejler den.

Den viser bare sådan et "billedet-kan-ikke-vises" icon.

Hvad gør jeg forkert?
Avatar billede benson Nybegynder
28. maj 2002 - 07:56 #1
SKal du have en
Response.Addheader "Content-Disposition", "attatchment; filename=billed.jpg"
på ?
Avatar billede Slettet bruger
28. maj 2002 - 07:57 #2
dunno, hvad betyder det?
Avatar billede benson Nybegynder
28. maj 2002 - 08:13 #3
Den genererer en Header til din web side, og der skal altid genereres en header inden du sende et output til en side. !
Avatar billede tmceu Praktikant
28. maj 2002 - 08:16 #4
Hvis du skriver et billede ud direkte fra databasen, skal du bruge response.binarywrite
Avatar billede Slettet bruger
28. maj 2002 - 08:17 #5
Dette er hvad jeg gør nu.

Response.ContentType = rs("Image_Type")
Response.BinaryWrite rs("billede")

hvad mere skal jeg gøre?
Avatar billede Slettet bruger
28. maj 2002 - 08:20 #6
rs("Image_Type") = image/gif eller image/jpeg, alt efter hvad filen er.
Avatar billede Slettet bruger
28. maj 2002 - 08:22 #7
benson, Response.Contentype genererer vel hvilken mimetype filen skal være?
Avatar billede benson Nybegynder
28. maj 2002 - 08:34 #8
joker> Jep ! Det er korrekt. Jeg kan heller ikke finde på andet end det med headeren. Sorry !-(
Avatar billede tmceu Praktikant
28. maj 2002 - 17:10 #9
Med mindre du har sat response.buffer = true, skal din response.contenttype = x eller response.addheader ligge i toppen af din kode, da de modificerer HTTP headers.

Da du henter værdien til contenttype fra et recordset, er response.buffer = true reelt den eneste mulighed. Og du må vel at mærk ikke udskrive noget til klienten med response.flush inden.
Avatar billede Slettet bruger
28. maj 2002 - 20:44 #10
Kan jeg ikke få et script der viser hvordan jeg skal gøre?
Avatar billede tmceu Praktikant
28. maj 2002 - 20:49 #11
Hvis du kan vise noget af din kode, skal jeg prøve at smide det ind. Men helst ikke 200 liniers kode, som ingen betydning har for dette :-)
Avatar billede Slettet bruger
28. maj 2002 - 21:23 #12
IntID = Request.QueryString("id")
        Set myConn = Server.CreateObject("ADODB.Connection")
        tempConn = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb") & ";UID=admin;PWD=;"
        myConn.Open tempConn

    strSQL = "SELECT billede, Image_Type FROM kataloger WHERE (ID = " & intID & ");"
    Set rs = myConn.Execute(strSQL)
    If Not rs.EOF Then

        Response.ContentType = rs("Image_Type")
        Response.BinaryWrite rs("billede")

    End If
    myConn.Close
    Set myConn = Nothing
    Response.End
Avatar billede tmceu Praktikant
28. maj 2002 - 21:47 #13
<%@ Language=VBScript %>
<%
    response.buffer = true

    IntID = Request.QueryString("id")
        Set myConn = Server.CreateObject("ADODB.Connection")
        tempConn = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb") & ";UID=admin;PWD=;"
        myConn.Open tempConn

    strSQL = "SELECT billede, Image_Type FROM kataloger WHERE (ID = " & intID & ");"
    Set rs = myConn.Execute(strSQL)
    If Not rs.EOF Then

        Response.ContentType = rs("Image_Type")
        Response.BinaryWrite rs("billede")

    End If
    myConn.Close
    Set myConn = Nothing
    Response.End

%>
Avatar billede tmceu Praktikant
28. maj 2002 - 21:59 #14
Der skal faktisk nok lidt mere til, ift. at hive billedet ud. Se dette link som har et komplet script incl. demodatabase:

http://www.freevbcode.com/ShowCode.Asp?ID=893

(du skal download .zip filen)
Avatar billede Slettet bruger
29. maj 2002 - 02:50 #15
Det nytter ikke noget, jeg må finde på noget andet.
Avatar billede tmceu Praktikant
29. maj 2002 - 07:44 #16
Hvad så med at lagre billederne i filsystemet og blot gemme sti/navn i databasen. Når du så vil vise billedet, laver du en

<IMG SRC="<% rs("ImageName") %>">

Faktisk vil det også give dig en meget bedre performance. Sig til hvsi du skal have hjælp til dette.
Avatar billede Slettet bruger
30. maj 2002 - 02:17 #17
Det kan jeg godt finde ud af ;)
ellers tak.
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