Sayfayı Yazdır | Pencereyi Kapat

satir 115 veri tabani acmak istiyorum

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Genel İşlemler
Forum Tanımlaması: TRObject dili ile programlama yaparken karşılaşılan genel işlemler
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=1604
Tarih: 09 Temmuz 2026 Saat 11:52
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: satir 115 veri tabani acmak istiyorum
Mesajı Yazan: Barthe_dev
Konu: satir 115 veri tabani acmak istiyorum
Mesaj Tarihi: 08 Temmuz 2026 Saat 15:14
//Login page
var
loginform : TclForm;
PanelForm : TclProPanel;
titleLabel: TClProLabel;
titleLabellogin: TClProLabel;
EmailEdit,ParolaEdit:TclProEdit;
logbtn:TClProButton;
email,pass:String;


void setPanel(a,b:Integer;color:String);
{
  PanelForm = loginform.AddNewProPanel(loginform,'PanelForm');
  PanelForm.Align = alCenter; 
  PanelForm.Width = a;
  PanelForm.Height = b; 
  
  PanelForm.clProSettings.BorderColor = clAlphaColor.clHexToColor('#46484e');
  PanelForm.clProSettings.BorderWidth = 2;
  PanelForm.clProSettings.IsFill = True; 
  PanelForm.clProSettings.IsRound = True;
  PanelForm.clProSettings.BackgroundColor = clAlphaColor.clHexToColor(color);
  PanelForm.SetclProSettings(PanelForm.clProSettings);
}
void setLabel;
{
  titleLabel = loginform.AddNewProLabel(PanelForm,'titleLabel','WELCOME TO CLOMOSY');
  titleLabel.Align = alTop;
  titleLabel.Height = 70;
  
  titleLabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#e14714');
  titleLabel.clProSettings.FontSize = 40;
  titleLabel.clProSettings.FontVertAlign = palcenter;
  titleLabel.clProSettings.FontHorzAlign = palCenter;
  titleLabel.clProSettings.TextSettings.Font.Style = [fsBold];
  titleLabel.SetclProSettings(titleLabel.clProSettings);
}
void setLabelLogin;
{
  titleLabellogin = loginform.AddNewProLabel(PanelForm,'titleLabellogin','Login to your Page');
  titleLabellogin.Align = alTop;
  titleLabellogin.Height = 70;
  
  titleLabellogin.clProSettings.FontColor = clAlphaColor.clHexToColor('#e14714');
  titleLabellogin.clProSettings.FontSize = 40;
  titleLabellogin.clProSettings.FontVertAlign = palcenter;
  titleLabellogin.clProSettings.FontHorzAlign = palCenter;
  titleLabellogin.clProSettings.TextSettings.Font.Style = [fsBold];
  titleLabellogin.SetclProSettings(titleLabellogin.clProSettings);
}


void setEmail{
  EmailEdit=loginform.AddNewProEdit(PanelForm, 'EmailEdit', 'Enter your email here')
  EmailEdit.Align=alTop;
  EmailEdit.Height=50;
  EmailEdit.Margins.Top=20;
  EmailEdit.Margins.Left=20;
  EmailEdit.Margins.Right=20;
  EmailEdit.clProSettings.BackgroundColor=clAlphaColor.clHexToColor('#D1D1D1');
  EmailEdit.clProSettings.IsTransparent=True;
  EmailEdit.clProSettings.IsRound=False;
  EmailEdit.clProSettings.RoundWidth=20;
  EmailEdit.clProSettings.RoundHeight=20;
  EmailEdit.clProSettings.BorderColor=clAlphaColor.clHexToColor('#070807');
  EmailEdit.clProSettings.BorderWidth=2;
  EmailEdit.TextSettings.Font.Size=16;
  EmailEdit.TextSettings.FontColor=clAlphaColor.clHexToColor('#070807');
  EmailEdit.SetclProSettings(EmailEdit.clProSettings);
  
}
void setParola{
  ParolaEdit=loginform.AddNewProEdit(PanelForm, 'ParolaEdit', 'Enter your password here')
  ParolaEdit.Align=alTop;
  ParolaEdit.Height=50;
  ParolaEdit.Margins.Top=20;
  ParolaEdit.Margins.Left=20;
  ParolaEdit.Margins.Right=20;
  ParolaEdit.password=True
  ParolaEdit.clProSettings.BackgroundColor=clAlphaColor.clHexToColor('#919191');
  ParolaEdit.clProSettings.IsTransparent=True;
  ParolaEdit.clProSettings.IsRound=False;
  ParolaEdit.clProSettings.RoundWidth=20;
  ParolaEdit.clProSettings.RoundHeight=20;
  ParolaEdit.clProSettings.BorderColor=clAlphaColor.clHexToColor('#070807');
  ParolaEdit.clProSettings.BorderWidth=2;
  ParolaEdit.TextSettings.Font.Size=16;
  ParolaEdit.TextSettings.FontColor=clAlphaColor.clHexToColor('#070807');
  ParolaEdit.SetclProSettings(ParolaEdit.clProSettings);
  
}

void login{
  logbtn=loginform.AddNewProButton(PanelForm, 'logbtn', 'LogIn')
  logbtn.Align=alCenter;
  logbtn.Height=60;
  logbtn.Width=150;
  logbtn.Margins.Top=30;
  logbtn.Margins.Left=20;
  logbtn.Margins.Right=20;
  logbtn.Margins.Bottom=70;
  logbtn.clProSettings.BackgroundColor=clAlphaColor.clHexToColor('#e14714');
  logbtn.clProSettings.RoundWidth=20;
  logbtn.clProSettings.RoundHeight=20;
  logbtn.clProSettings.BorderColor=clAlphaColor.clHexToColor('#070807');
  logbtn.clProSettings.BorderWidth=2;
  logbtn.clProSettings.FontSize=20;
  logbtn.clProSettings.FontColor=clAlphaColor.clHexToColor('#ffffff');
  logbtn.clProSettings.TextSettings.Font.Style  = [fsBold];
  logbtn.SetclProSettings(logbtn.clProSettings);
  
  loginform.AddNewEvent(logbtn, tbeOnClick, 'connection');
}
void veriTabani{
  Clomosy.DBSQLServerQuery.Open;
  Clomosy.DBSQLiteQuery.Open;
  Query1.Open; // Query1 opens the database query.
}
void SetVeri{
  SqliteQuery1.Insert; // Switch to edit mode to add a new record
  SqliteQuery1.FieldByName('Email').AsString = '[email protected]'; // Set field values
  SqliteQuery1.FieldByName('password').AsString = 'clomosy';

  SqliteQuery1.Post; // Save changes
  SqliteQuery1.Close; // Close the query
}
void getVeri(email,pass:String){
  SqliteQuery1.SQL.Text = 'SELECT * FROM Users WHERE Email = email AND password=pass';
  SqliteQuery1.Open; 
  if(SqliteQuery1.RecordCount<>0){
    ShowMessage('Welcome user'+email);
  }
  else{
    ShowMessage('Connection failed!!! Check your email and your password and try again');
  }
  SqliteQuery1.Close;
}

void connection
{
  email=EmailEdit(loginform.ClSender).Caption; 
  pass=ParolaEdit(loginform.ClSender).Caption; 
  getVeri(email,pass);
}


{
  loginform = TCLForm.Create(Self);
  loginform.SetFormColor('#101d2d','',clGNone);
  setPanel(480,420,'#080c16');
  setLabel;
  setLabelLogin;
  setEmail;
  setParola;
  login;
  veriTabani;
  SetVeri;
  getVeri;
  loginform.Run;
}







https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" 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">



Cevaplar:
Mesajı Yazan: ibrahimBsr
Mesaj Tarihi: 08 Temmuz 2026 Saat 15:40
Orda hata almanın sebebi Clomosyde SQLite sorgularından .Open kullanılmaz onun yerine .OpenOrExecute kullanılır bu method parametre istemez. Bunun haricinde de bazı hatalar gördüm Query1 ve SqliteQuery1 değişkenlerini tanımlamadan kullanmışsın. 

Kodun doğru hali:

//Login page
var
loginform : TclForm;
PanelForm : TclProPanel;
titleLabel: TClProLabel;
titleLabellogin: TClProLabel;
EmailEdit,ParolaEdit:TclProEdit;
logbtn:TClProButton;
email,pass:String;
SqliteQuery1 : TClSQLiteQuery; // HATA 1: SqliteQuery1 değişkeni tanımlanmamıştı, eklendi.

void setPanel(a,b:Integer;color:String);
{
  PanelForm = loginform.AddNewProPanel(loginform,'PanelForm');
  PanelForm.Align = alCenter; 
  PanelForm.Width = a;
  PanelForm.Height = b; 
  
  PanelForm.clProSettings.BorderColor = clAlphaColor.clHexToColor('#46484e');
  PanelForm.clProSettings.BorderWidth = 2;
  PanelForm.clProSettings.IsFill = True; 
  PanelForm.clProSettings.IsRound = True;
  PanelForm.clProSettings.BackgroundColor = clAlphaColor.clHexToColor(color);
  PanelForm.SetclProSettings(PanelForm.clProSettings);
}

void setLabel;
{
  titleLabel = loginform.AddNewProLabel(PanelForm,'titleLabel','WELCOME TO CLOMOSY');
  titleLabel.Align = alTop;
  titleLabel.Height = 70;
  
  titleLabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#e14714');
  titleLabel.clProSettings.FontSize = 40;
  titleLabel.clProSettings.FontVertAlign = palcenter;
  titleLabel.clProSettings.FontHorzAlign = palCenter;
  titleLabel.clProSettings.TextSettings.Font.Style = [fsBold];
  titleLabel.SetclProSettings(titleLabel.clProSettings);
}

void setLabelLogin;
{
  titleLabellogin = loginform.AddNewProLabel(PanelForm,'titleLabellogin','Login to your Page');
  titleLabellogin.Align = alTop;
  titleLabellogin.Height = 70;
  
  titleLabellogin.clProSettings.FontColor = clAlphaColor.clHexToColor('#e14714');
  titleLabellogin.clProSettings.FontSize = 40;
  titleLabellogin.clProSettings.FontVertAlign = palcenter;
  titleLabellogin.clProSettings.FontHorzAlign = palCenter;
  titleLabellogin.clProSettings.TextSettings.Font.Style = [fsBold];
  titleLabellogin.SetclProSettings(titleLabellogin.clProSettings);
}


void setEmail;
{
  // HATA 2: Satır sonlarında noktalı virgül (;) eksikti, eklendi.
  EmailEdit=loginform.AddNewProEdit(PanelForm, 'EmailEdit', 'Enter your email here');
  EmailEdit.Align=alTop;
  EmailEdit.Height=50;
  EmailEdit.Margins.Top=20;
  EmailEdit.Margins.Left=20;
  EmailEdit.Margins.Right=20;
  EmailEdit.clProSettings.BackgroundColor=clAlphaColor.clHexToColor('#D1D1D1');
  EmailEdit.clProSettings.IsTransparent=True;
  EmailEdit.clProSettings.IsRound=False;
  EmailEdit.clProSettings.RoundWidth=20;
  EmailEdit.clProSettings.RoundHeight=20;
  EmailEdit.clProSettings.BorderColor=clAlphaColor.clHexToColor('#070807');
  EmailEdit.clProSettings.BorderWidth=2;
  EmailEdit.TextSettings.Font.Size=16;
  EmailEdit.TextSettings.FontColor=clAlphaColor.clHexToColor('#070807');
  EmailEdit.SetclProSettings(EmailEdit.clProSettings);
}

void setParola;
{
  // Noktalı virgüller eksikti, eklendi.
  ParolaEdit=loginform.AddNewProEdit(PanelForm, 'ParolaEdit', 'Enter your password here');
  ParolaEdit.Align=alTop;
  ParolaEdit.Height=50;
  ParolaEdit.Margins.Top=20;
  ParolaEdit.Margins.Left=20;
  ParolaEdit.Margins.Right=20;
  ParolaEdit.password=True;
  ParolaEdit.clProSettings.BackgroundColor=clAlphaColor.clHexToColor('#919191');
  ParolaEdit.clProSettings.IsTransparent=True;
  ParolaEdit.clProSettings.IsRound=False;
  ParolaEdit.clProSettings.RoundWidth=20;
  ParolaEdit.clProSettings.RoundHeight=20;
  ParolaEdit.clProSettings.BorderColor=clAlphaColor.clHexToColor('#070807');
  ParolaEdit.clProSettings.BorderWidth=2;
  ParolaEdit.TextSettings.Font.Size=16;
  ParolaEdit.TextSettings.FontColor=clAlphaColor.clHexToColor('#070807');
  ParolaEdit.SetclProSettings(ParolaEdit.clProSettings);
}

void login;
{
  logbtn=loginform.AddNewProButton(PanelForm, 'logbtn', 'LogIn');
  logbtn.Align=alCenter;
  logbtn.Height=60;
  logbtn.Width=150;
  logbtn.Margins.Top=30;
  logbtn.Margins.Left=20;
  logbtn.Margins.Right=20;
  logbtn.Margins.Bottom=70;
  logbtn.clProSettings.BackgroundColor=clAlphaColor.clHexToColor('#e14714');
  logbtn.clProSettings.RoundWidth=20;
  logbtn.clProSettings.RoundHeight=20;
  logbtn.clProSettings.BorderColor=clAlphaColor.clHexToColor('#070807');
  logbtn.clProSettings.BorderWidth=2;
  logbtn.clProSettings.FontSize=20;
  logbtn.clProSettings.FontColor=clAlphaColor.clHexToColor('#ffffff');
  logbtn.clProSettings.TextSettings.Font.Style  = [fsBold];
  logbtn.SetclProSettings(logbtn.clProSettings);
  
  loginform.AddNewEvent(logbtn, tbeOnClick, 'connection');
}

void veriTabani;
{
  // HATA 3: Veritabanı bağlantısı hiç yapılmamıştı! DBSQLiteConnect komutu eklendi.
  Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'veritabanim.db3', '');
  
  // Tablonun var olduğundan emin olmak için tablo oluşturma (Yoksa oluşturur)
  Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE IF NOT EXISTS Users (Email TEXT, password TEXT)';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
}

void SetVeri;
{
  // HATA 4: Insert işlemi için doğrudan SQL sorgusu yazıp OpenOrExecute kullanmak en sağlıklı yöntemdir.
  Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO Users (Email, password) VALUES ('+QuotedStr('[email protected]')+', '+QuotedStr('clomosy')+')';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
}

void getVeri(email,pass:String);
{
  // HATA 5: Değişkenler tırnak içinde gönderilemez! QuotedStr ile string dışına alınıp birleştirilmeli.
  SqliteQuery1 = Clomosy.DBSQLiteQueryWith('SELECT * FROM Users WHERE Email = '+QuotedStr(email)+' AND password='+QuotedStr(pass));
  SqliteQuery1.OpenOrExecute; // Open yerine OpenOrExecute kullanıldı
  
  if (SqliteQuery1.Found) // Found komutu kayıt bulundu mu kontrolü için daha sağlıklıdır.
  {
    ShowMessage('Welcome user '+email);
  }
  else
  {
    ShowMessage('Connection failed!!! Check your email and your password and try again');
  }
}

void connection;
{
  // HATA 6: ProEdit nesnelerinin değerini .Caption ile değil .Text ile almalısınız.
  email=EmailEdit.Text; 
  pass=ParolaEdit.Text; 
  getVeri(email,pass);
}

{
  loginform = TCLForm.Create(Self);
  loginform.SetFormColor('#101d2d','',clGNone);
  
  veriTabani;
  SetVeri; // Eğer her program açıldığında Ali222 kullanıcısını tekrar tekrar eklemesini istemiyorsanız, testten sonra bu satırı silebilirsiniz.
  
  setPanel(480,420,'#080c16');
  setLabel;
  setLabelLogin;
  setEmail;
  setParola;
  login;
  
  // HATA 7: Ana blokta getVeri; fonksiyonu parametresiz çalıştırılmaya çalışılıyordu. Bu satır silindi. (Bağlantı butona basınca connection fonksiyonu ile zaten çalışacaktır).
  
  loginform.Run;
}
https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" 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">



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net