Avatar billede tuba Nybegynder
23. juli 2002 - 10:37 Der er 8 kommentarer og
1 løsning

opdater tabel med binary data

Jeg bruger AspJpeg fra persits til at redigere billeder der er gemt i database. Selve redigerigen går fint men når jeg skal opdatere min tabel med de nye data, går det galt. Uddrag fra koden :

' resize

jpeg.Width = int(Request("intWidth"))

' Set new height, preserve original width/height ratio
jpeg.Height = int(RS("PicHeight")) * jpeg.Width / int(RS("PicWidth"))

' apply sharpening
Jpeg.Sharpen 1, 110

Jpeg.SendBinary

   
' opdater tabel med nye billeddimensioner
strSQL = " UPDATE tblMedia SET "
strSQL = strSQL & " image_blob = " & "'" & Jpeg.SendBinary & "'"
strSQL = strSQL & " WHERE mediaID=" & Request("mediaID")
       
Connect.Execute strSQL

eget bud er; at der er karakterer i SQL-forespørgslen som denne ikke kan håndtere.
Avatar billede tmceu Praktikant
23. juli 2002 - 11:25 #1
Det ville hjælpe med en beskrivelse af fejlen.

Jeg kender ikke denne komponent specifikt, men baseret på erfaringer med andre komponenter, er et bud på problemet at du kalder SendBinary 2 gange. Mange upload komponenter tillader kun at man kalder save metoden én gang, måske er det samme situation med SendBinary ?

Og undskyld jeg spørger, men hvorfor gemmer du billederne i databasen og ikke i filsystemet ?
Avatar billede Slettet bruger
23. juli 2002 - 11:25 #2
Har du udskrevet SQL sætningen med Response.Write?
Definér "går det galt".... evt. fejlmeddelelse?
Avatar billede tuba Nybegynder
23. juli 2002 - 11:53 #3
ja, undskyld jeg ikke var specifik nok; jeg får ikke nogen fejlmeddelelse, sqlforespørgslen bliver eksekveret men billedet bliver ikke gemt rigtigt. Når jeg prøvet at åbne billedet igen med flg linie:  Jpeg.OpenBinary rs("image_blob").Value - får jeg flg error:

Persits.Jpeg.1 error '80040035'
Not a JPEG file: starts with 0x70 0xde

ja hvorfor valgte jeg at gemme billederne direkte i databasen ? hvis jeg havde gemt billederne i filsystemet skulle jeg alligevel bruge en db til at tracke diverse information om filerne alligevel. Jeg undgår at billederne bliver overskrevet pga af ens filnavne og når jeg tager backup at db´en bliver billederne samtidig backup´ed
Avatar billede Slettet bruger
23. juli 2002 - 12:01 #4
Jeg tror tmceu har de "performance issuses" i tankerne, som denne metode forårsager.

Har du prøvet at skrive filen til noget andet end databasen med sucess - Med samme metode (Jpeg.SendBinary) ?
Avatar billede tuba Nybegynder
23. juli 2002 - 12:09 #5
ja direkte til browseren og der er billedet som det skal være...
Avatar billede tmceu Praktikant
23. juli 2002 - 13:05 #6
Jeg har oplevet et lignende problem med et webkamera. Hvis jeg skriver de binære data direkte til en browser, vises billedet uden problemer. Hvis jeg derimod gemmer det i en fil og derefter åbner det i et hvilket som helst grafik program, får jeg en fejl i samme stil, at der mangler noget "header information" for et JPEG billede. Jeg kan til gengæld godt vise samme billedfil i browseren uden problemer.

Umiddelbart vil jeg mene at JPEG formatet ikke bliver overholdt af komponenten efter Sharpen metoden og at du derfor gemmer et ugyldigt format. Jeg vil foreslå dig at poste data for en mindre fil hhv. før- og efter du har manipuleret billedet og høre om nogen enten herinde eller måske endnu bedre på usenet kan se hvad der går galt.
Avatar billede tmceu Praktikant
23. juli 2002 - 13:17 #7
Og mht. at gemme binære data i databasen vs. filsystemet, ja så tænker jeg på performance. I min verden har billeder o.lign. intet at gøre i en database, hvis man er bare en smule performance orienteret.

Filsystemet er meget bedre til at tage sig af netop filer. Derfor mener jeg at det er bedre blot at gemme sti/filnavn i databasen og selve filen i filsystemet. Og mht. at få filerne overskrevet, kan de fleste upload komponenter håndtere dette. Hvis overwrite sættes til false, vil komponenten postfixe navnet med eks. (1) el.lign. så filerne ikke overskrives.
Avatar billede tuba Nybegynder
23. juli 2002 - 13:54 #8
jeg laver den om så den saver i filsystemet istedet !, det tror jeg ikke der er så mange problemer med....
Avatar billede tuba Nybegynder
23. juli 2002 - 13:56 #9
lukker spg
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