ilettiğin hatanın sebebi clomosy de doğrudan .picture özelliğinin olmaması
var
clRest : TclRest;
secilenFotoBase64, cloudinaryLink, g_ApiUrl : String;
g_KullaniciId : Integer;
void CloudinaryeYukleVeGonder;
var
cloudRest: TclRest;
jsonBody: String;
{
if (secilenFotoBase64 == '') {
ShowMessage('Lütfen önce bir fotoğraf seçin.');
Exit;
}
BtnGonder.Enabled = False;
cloudRest = TclRest.Create;
// 'YOUR_CLOUD_NAME' kısmını kendi hesabındaki isimle değiştir
cloudRest.BaseURL = ' https://api.cloudinary.com/v1_1/YOUR_CLOUD_NAME/image/upload" rel="nofollow - https://api.cloudinary.com/v1_1/YOUR_CLOUD_NAME/image/upload ';
cloudRest.Method = rmPost;
cloudRest.AddParameter('file', 'data:image/jpg;base64,' + secilenFotoBase64);
cloudRest.AddParameter('upload_preset', 'YOUR_UNSIGNED_PRESET');
try
cloudRest.Execute;
if (cloudRest.Response <>'')
{
cloudinaryLink = Clomosy.JsonPathString(cloudRest.Response, 'secure_url');
if (cloudinaryLink <>'')
{
SikayetiGonder(cloudinaryLink);
}
else
{
ShowMessage('Fotoğraf yükleme başarısız oldu.');
BtnGonder.Enabled = True;
}
}
except
ShowMessage('Bağlantı hatası: ' + LastExceptionMessage);
BtnGonder.Enabled = True;
}
}
void SikayetiGonder(AFotoUrl: String);
var
sikayetRest: TclRest;
jsonBody: String;
{
sikayetRest = TclRest.Create;
sikayetRest.BaseURL = g_ApiUrl + '/api/sikayet-ekle';
sikayetRest.Method = rmPost;
sikayetRest.Accept = 'application/json';
jsonBody = '{' +
'"kullanici_id": ' + IntToStr(g_KullaniciId) + ', ' +
'"baslik": "' + EditBaslik.Text + '", ' +
'"aciklama": "' + MemoAciklama.Text + '", ' +
'"foto_url": "' + AFotoUrl + '"' +
'}';
sikayetRest.AddBody(jsonBody, 'application/json');
try
sikayetRest.Execute;
ShowMessage('Şikayetiniz başarıyla iletildi!');
except
ShowMessage('Veritabanı hatası: ' + LastExceptionMessage);
finally
BtnGonder.Enabled = True;
}
}
void FotografSec;
{
Clomosy.ImageChooser(MainForm, ImgOnizleme);
if (ImgOnizleme <>nil)
{
secilenFotoBase64 = ImgOnizleme.ToBase64;
LblFotoAcik.Visible = False;
ImgOnizleme.Visible = True;
PnlFotoBox.clProSettings.BorderColor = clAlphaColor.clHexToColor('#27AE60');
PnlFotoBox.SetclProSettings(PnlFotoBox.clProSettings);
}
}
https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">