Arsip: Save picture dari image
more 12 years ago
musafir
Temen2 aku pengin simpan picture dari image kedalam database sql kok ga jadi2 ya?
Temen2 ada yg bisa bantu ga contoh scriptny..
dari structur table mysqlnya, sampai ke view pidture di imagenya dan simpan deh ke database dan bisa dimunculin lagi ke image atau pakai dbimage..
aku pakai zeos...
Tmen2 thanks ya....
more 12 years ago
Penjahat
Halo musafir...
kamu bisa menggunakan type data MEDIUMBLOB pada MySql
untuk viewernya gunakan saja TImage standard
untuk buffernya kita gunakan TMemoryStream
proses nampilkannya coba gunakan fungsi:
TBlobField.SaveToStream
dan
TImage.Picture.Graphic.LoadFromStream
untuk save dari TImage ke record
TImage.Picture.Graphic.SaveToStream
dan
TBlobField.LoadFromStream
..semoga membantu :)
more 12 years ago
musafir
OK Mas say coba pakes syntac ini untuk save mysql dan berhasil...
var
gambar:TMemoryStream ;
procedure Tform1.Button1Click(Sender: TObject);
begin
image1.Picture.Graphic.SaveToStream(gambar);
try
query1.Active:=True ;
query1.Edit;
TBlobField(query1.FieldByName('LOGO')).LoadFromStream(gambar);
query1.Post;
finally
gambar.Free;
end;
end;
Tapi untuk view lagi ke image error yang mncul seperti ini:
"EAccessViolation - Access violation at address 0077A412 in module 'project1.exe'. Read of address 00000000"
Syntak sya gini, mungkin ada yg kurang ya..
procedure Tform1.Button2Click(Sender: TObject);
try
with quey do begin
Active :=True;
TBlobField(FieldByName('LOGO')).SaveToStream(gambar);
Image1.Picture.Graphic.LoadFromStream(gambar);
end;
finally
gambar.Free;
end;
end;
Mohon bantuanya dong...
more 12 years ago
Penjahat
Halo musafir...
syntax-nya udah benar...
fungsi-fungsu yang digunakan juga udah benar. sama persis dengan saran saya sebelumnya
...tapi ada yg masih kurang sedikit :)
1.
yang saya tau, TGraphic akan mengalami Access Violation jika melakukan loading stream, sementara posisi stream tersebut berada pada EOF.
Coba geser posisi stream-nya ke BOF sebelum diload oleh TGraphic.
2.
Perlu dipastikan dulu Size dari stream tersebut sebelum di load TGraphic. Bisa jadi stream.Size berisi = 0 karena FieldByName('LOGO') bernilai NULL
try this
pastikan stream tidak kosong
if Gambar.Size < 1 then Exit;
Geser Stream ke BOF
Gambar.Position := 0;
Terimakasih musafir....
beritahu saya jika ini membantu
more 12 years ago
musafir
kok tetep tidak bisa ya.. ni syntak lengkap saya
procedure Tform1.FormShow(Sender: TObject);
begin
astream :=TMemoryStream.Create;
with querydtprshn do begin
SQL.Text:='SELECT * FROM cucicetak.nm_toko;';
active:=true;
edtnmpers.Text:=fieldbyname('NAMA').Text;
edtalmt.Text:=fieldbyname('ALMT').Text;
edtkt.Text:=fieldbyname('KOTA').Text;
edtkdps.Text:=fieldbyname('KODE_POS').Text;
edttlp.Text:=fieldbyname('TELP').Text;
edtfax.Text:=fieldbyname('FAX').Text;
edtmail.Text:=fieldbyname('Email').Text;
edthmpg.Text:=fieldbyname('HomePage').Text;
edtnpwp.Text:=fieldbyname('NPWP').Text;
edttgl.Text:=fieldbyname('TGL_MULAI').Text;
edtmoto.Text:=fieldbyname('MOTTO').Text;
try
if Active then
begin
TBlobField(FieldByName('LOGO')).SaveToStream(AStream);
astream.Position :=0;
Image1.Picture.Graphic.LoadFromStream(AStream);
end;
finally
AStream.Free;
end;
end;
edtnmpers.SetFocus;
end;
Handle exception yang saya dapatkan
EAccessViolation - Access violation at address 0077A99D in module 'a93nt_foto.exe'. Read of address 00000000
dan berhenti pada
....
Image1.Picture.Graphic.LoadFromStream(AStream)
....
kira2 apa lagi ya?
more 12 years ago
Penjahat
Halo musafir....
coba jawab beberapa pertanyaan ini, semoga dapat membantu;
1. DataBase server apa yang kamu pakai ?
2. Type data Field apa yang kamu pakai ?
3. Apakah pada proses save ke record TMemoryStream sudah di Create ?
OK Mas say coba pakes syntac ini untuk save mysql dan berhasil... var gambar:TMemoryStream ; procedure Tform1.Button1Click(Sender: TObject); begin image1.Picture.Graphic.SaveToStream(gambar); try query1.Active:=True ; query1.Edit; TBlobField(query1.FieldByName('LOGO')).LoadFromStream(gambar); query1.Post; finally gambar.Free; end; end;4. Type Image (Gambar) apa yang kamu pakai ? (png, jpg, bmp...) 5. Apakah sudah kamu pastikan bahwa pada Field LOGO benar-benar sudah berisi gambar ? thanks
more 12 years ago
musafir
1. DataBase server apa yang kamu pakai ?
'mYSQL server'
2. Type data Field apa yang kamu pakai ?
"BLOB"
3. Apakah pada proses save ke record TMemoryStream sudah di Create ?
TMemoryStream sya create pada event form onshow;
4. Type Image (Gambar) apa yang kamu pakai ? (png, jpg, bmp...)
'bmp' size sekitar 62kb resolusi 128x163
5. Apakah sudah kamu pastikan bahwa pada Field LOGO benar-benar sudah berisi gambar ?
"sudah saya pastikan masuk,,, sya view binary maupun image menggunakan query browser sudah tampil image yg saya masukkan tadi.. dan sudah di pastikan dengan menggunakan komponen DBiMage bisa tampil image tadi, tapi kalau pakai komponen image belum bisa"
Kira-kira dimana ya letak kesalahanya?
more 12 years ago
Penjahat
coba
image1.Picture.Graphic.SaveToStream(gambar);
diganti
image1.Picture.SaveToStream(gambar);
more 12 years ago
Dookie
@musafir: OK Mas say coba pakes syntac ini untuk save mysql dan berhasil... var gambar:TMemoryStream ; procedure Tform1.Button1Click(Sender: TObject); begin gambar:=TMemoryStream.create; image1.Picture.Graphic.SaveToStream(gambar); try query1.Active:=True ; query1.Edit; TBlobField(query1.FieldByName('LOGO')).LoadFromStream(gambar); query1.Post; finally gambar.Free; end; end; Mohon bantuanya dong...coba tambahin seperti yang saya tandain warna merah
more ...
- Pages:
- 1
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- shout box-nya bisa g sih ?
by EkoIndri in OOT more 17 years ago - where item_id in (:parameter)
by mas_kofa in MySQL more 16 years ago - gmn ya kalo mau ambil karakter tertentu di edit text?
by Quzy in Tip n Trik Pemrograman more 17 years ago - autosize resolusi form
by willbrig in Tip n Trik Pemrograman more 16 years ago - tanya connect database access k delphi
by kids in Tip n Trik Pemrograman more 16 years ago - Mengetahui kebutuhan bandwidth
by nick04 in Network, Files, I/O & System more 13 years ago - Caranya bikin program monitoring PLC secara serial
by doni_vika in Network, Files, I/O & System more 13 years ago - cash drawing untuk kasir
by ImanD in Enginering more 18 years ago - Interface koneksi lampu meja billyard...
by reminder2k1 in Enginering more 17 years ago - Probelem Null Date di FastReport jadi "31/12/1899"
by archvile in Reporting more 15 years ago