Form1 Resim Ekleme [Çözüldü]
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Form1 Resim Ekleme [Çözüldü]
Arkadaşlar Merhaba; Veri tabanına kayıt ettiğim öğrencilerin vesikalık resimlerini de kaydetmek istiyorum form da araştırdım ama kullanıcının rahatlıkla kaydedebileceği bir kod veya uygulama bulamadım bunu nasıl halledebilirim yardımcı olabilecek misiniz?
En son ozcank tarafından 28 Kas 2016 08:18 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Re: Form1 Resim Ekleme
Kod: Tümünü seç
var
MyQuery1453: TMyQuery;
begin
if OpenDialog1.Execute then
begin
Image1.Picture.LoadFromFile(OpenDialog1.filename);
MyQuery1453 := TMyQuery.Create(self);
MyQuery1453.Connection := ycon;
try
with MyQuery1453 do
begin
Close;
sql.Clear;
sql.Add('INSERT INTO uzaks (s1,jpeg) VALUES (:s1,:jp)');
ParamByName('s1').AsString := GetUserFromWindows;
ParamByName('jp').LoadFromFile(OpenDialog1.filename, ftBlob);
Execute;
end;
finally
MyQuery1453.Free;
end;
end;
end;
Çaylak Delphici
Yakup ULUTAŞ
Yakup ULUTAŞ
Re: Form1 Resim Ekleme
yhackup gönderdiğin kodu uyarlıyorum ama şurda hata veriyor;
Delphi7 Kullanıyorum veri tabanım MSSQL
[Error] MADENTANIMA.pas(613): Undeclared identifier: 'GetUserFromWindows'
[Error] MADENTANIMA.pas(615): Undeclared identifier: 'Execute'
[Fatal Error] MADENPRJ1.dpr(10): Could not compile used unit 'MADENTANIMA.pas'
Delphi7 Kullanıyorum veri tabanım MSSQL
Kod: Tümünü seç
try
with MyQuery1453 do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO MADENKAYIT (MD_YEDEK1,jpeg) VALUES (:s1,:jp)');
MADENKAYIT.Parameters.ParamByName('S1').Value := GetUserFromWindows;
MADENKAYIT.Parameters.ParamByName('jp').LoadFromFile(OpenDialog1.filename, ftBlob);
Execute;
end;
finally
[Error] MADENTANIMA.pas(615): Undeclared identifier: 'Execute'
[Fatal Error] MADENPRJ1.dpr(10): Could not compile used unit 'MADENTANIMA.pas'
Re: Form1 Resim Ekleme
ben componet olarak mydac kullanıyorum, sanırım sen başka bir şey kullanıyorsun ve Execute proceduru yok seninkinde,
GetUserFromWindows benim kullandığım bir fonksiyon windows kullanıcı adını döndürür.
Kopyala yapıştır yapma içerisinden işine yarayan bölümleri al
sana lazım olacak kilit nokta parametre geçerken kullanman gereken satır bu
OpenDialog1.filename seçtiğin dosyanın dizinini veriyor 'C:\yakup\yakup.jpg' gibi ve tablodaki field tipin longblob olmalı.
GetUserFromWindows winapiden geliyor buradan inceleyebilrsin
GetUserFromWindows benim kullandığım bir fonksiyon windows kullanıcı adını döndürür.
Kod: Tümünü seç
function GetUserFromWindows: string;
var
iLen: Cardinal;
begin
iLen := 256;
result := StringOfChar(#0, iLen);
GetUserName(pcHAR(result), iLen);
SetLength(result, iLen);
end;
sana lazım olacak kilit nokta parametre geçerken kullanman gereken satır bu
Kod: Tümünü seç
ParamByName('jp').LoadFromFile(OpenDialog1.filename, ftBlob);
GetUserFromWindows winapiden geliyor buradan inceleyebilrsin
Çaylak Delphici
Yakup ULUTAŞ
Yakup ULUTAŞ
Re: Form1 Resim Ekleme
Peki bunun boyutunu ayarlayabilir miyim ? İmage1 içerisine tam sığdırmak için.
Re: Form1 Resim Ekleme
ozcank yazdı:Peki bunun boyutunu ayarlayabilir miyim ? İmage1 içerisine tam sığdırmak için.
Kod: Tümünü seç
Image1.Stretch := true;
Çaylak Delphici
Yakup ULUTAŞ
Yakup ULUTAŞ
Re: Form1 Resim Ekleme
Veri tabanım MSSQL ve ben alanını Image olarak ayarladım
Kaydedeceğim alan da MD_YEDEK1 bir türlü kaydedemedim ?
---------------------------
Debugger Exception Notification
---------------------------
Project MADENPRJ1.exe raised exception class EDatabaseError with message 'MADENKAYIT: Parameter 'MD_YEDEK1' not found'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
Kaydedeceğim alan da MD_YEDEK1 bir türlü kaydedemedim ?
Kod: Tümünü seç
MADENKAYIT.Parameters.ParamByName('MD_YEDEK1').LoadFromFile(OpenDialog1.filename, ftBlob);
---------------------------
Debugger Exception Notification
---------------------------
Project MADENPRJ1.exe raised exception class EDatabaseError with message 'MADENKAYIT: Parameter 'MD_YEDEK1' not found'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
Re: Form1 Resim Ekleme
ozcank yazdı:Veri tabanım MSSQL ve ben alanını Image olarak ayarladım
Kaydedeceğim alan da MD_YEDEK1 bir türlü kaydedemedim ?Kod: Tümünü seç
MADENKAYIT.Parameters.ParamByName('MD_YEDEK1').LoadFromFile(OpenDialog1.filename, ftBlob);
---------------------------
Debugger Exception Notification
---------------------------
Project MADENPRJ1.exe raised exception class EDatabaseError with message 'MADENKAYIT: Parameter 'MD_YEDEK1' not found'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
diyor ki MADENKAYIT'a böyle bir parametre geçiyorsun ama, MADENKAYIT sql cümlesinde böyle bir parametre yok
Örneğin
sql.Add('INSERT INTO uzaks (s1) VALUES (:s1)');
ParamByName('s1').AsString := GetUserFromWindows;
ParamByName('jp').LoadFromFile(OpenDialog1.filename, ftBlob);
mesela bunun gibi jp adında parametre geçmişim ama bu parametre sql scriptimde yok
Çaylak Delphici
Yakup ULUTAŞ
Yakup ULUTAŞ
Re: Form1 Resim Ekleme
Peki ben TDBImage1 kullandım resmide ekliyorum. Ben ilgili dizin altında RESIM diye klasör açsam ve resimleri oraya kaydetsem bu yolu nasıl veri tabanına kaydedebilirim ?
"c:\maden\resim\resim1.jpg"
"c:\maden\resim\resim1.jpg"
Re: Form1 Resim Ekleme
ozcank yazdı:Peki ben TDBImage1 kullandım resmide ekliyorum. Ben ilgili dizin altında RESIM diye klasör açsam ve resimleri oraya kaydetsem bu yolu nasıl veri tabanına kaydedebilirim ?
"c:\maden\resim\resim1.jpg"
TFile kullanacaksın.
http://docwiki.embarcadero.com/CodeExam ... s_(Delphi)
Burada basitçe anlatılmış.
Çaylak Delphici
Yakup ULUTAŞ
Yakup ULUTAŞ
Re: Form1 Resim Ekleme
link yönlendirme çalışmadı.
İnternette Tfile diye arat.
İnternette Tfile diye arat.
Kod: Tümünü seç
procedure TForm1.operations(Sender: TObject);
begin
try
{ Copy file from source file path to destination file path }
if Sender = btnCopy then
TFile.Copy(edSourcePath.Text, edDestinationPath.Text);
{ Move file from source file path to destination file path }
if Sender = btnMove then
TFile.Move(edSourcePath.Text, edDestinationPath.Text);
{ Delete file from source file path }
if Sender = btnDelete then
TFile.Delete(edSourcePath.Text);
except
MessageDlg('Incorrect path', mtError, [mbOK], 0);
Exit;
end;
end;
Çaylak Delphici
Yakup ULUTAŞ
Yakup ULUTAŞ
Re: Form1 Resim Ekleme
yhackup yardımların için çok teşekkür ederim. Şu şekilde yapmaya uğraşıyorum ;
---------------------------
Debugger Exception Notification
---------------------------
Project MADENPRJ1.exe raised exception class EInvalidGraphic with message 'Bitmap image is not valid'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
bu hatayı aldım.
Kod: Tümünü seç
MADENKAYIT.FieldByName('MD_YEDEK1').Value:= opendialog1.filename;
Debugger Exception Notification
---------------------------
Project MADENPRJ1.exe raised exception class EInvalidGraphic with message 'Bitmap image is not valid'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
bu hatayı aldım.
Re: Form1 Resim Ekleme
image sonra onu nvarchar olarak değiştirdim ve yolu kaydetti şimdi ilgili öğrenciyi secince resmi nasıl yükleyebilirim?
Resim.Picture.LoadFromFile:=DBGrid2.DataSource.DataSet.FieldByName('MD_YEDEK1').AsString;
Resim.Picture.LoadFromFile:=DBGrid2.DataSource.DataSet.FieldByName('MD_YEDEK1').AsString;
- adelphiforumz
- Üye
- Mesajlar: 602
- Kayıt: 01 Nis 2008 05:38
- Konum: İstanbul
Re: Form1 Resim Ekleme
Fikir vermesi açısından aşağıdaki linki incelemenizi tavsiye ederim.
viewtopic.php?f=2&t=36171&p=195213#p195213
viewtopic.php?f=2&t=36171&p=195213#p195213
Ehil olmayanlara sabretmek ehil olanları parlatır.
Akıllı birisinden gelen cefa, bilgisizlerin vefasından iyidir.
Bilgiye ulaştı mı ayak, kanat olur
Biz insanı kıyafetiyle ağırlar bilgisiyle uğurlarız.
Mevlana
Akıllı birisinden gelen cefa, bilgisizlerin vefasından iyidir.
Bilgiye ulaştı mı ayak, kanat olur
Biz insanı kıyafetiyle ağırlar bilgisiyle uğurlarız.
Mevlana