Clomosy Resmi Forum Sitesidir. Amacımız kullanıcılarımıza, iş ortaklarımıza, danışmanlara, yazılımcılara programlarımız hakkında destek ve bilgi vermektir. |
Veritabanı |
Yanıt Yaz |
Yazar | |
MustafaCetin
Yeni Üye Kayıt Tarihi: 19 Ağustos 2024 Konum: Konya Durum: Aktif Değil Puanlar: 13 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı MustafaCetin
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
Gönderim Zamanı: 29 Ağustos 2024 Saat 15:42 |
Kullanıcı kayıt ve giriş yapabiliyor ama not kaydetmek istediğimde sqlite da tablo oluşturuyor sonra Not kaydı sırasında bir hata oluştu mesajı geliyor. var anaSayfa, girisSayfa, kayitSayfa, postLoginSayfa: TclForm; nameK, surnameK, passwordK: TclProEdit; nameG, surnameG, passwordG: TclProEdit; kayitButton, girisButton: TclProButton; notBasligiEdit, notIcerigiEdit: TclProEdit; VScroll:TCLVertScrollBox; void ShowAnaSayfa; { if not (Assigned(anaSayfa)) anaSayfa = TclForm.Create(Self); anaSayfa.SetFormBGImage('https://i.hizliresim.com/phhojjq.jpg'); girisButton = anaSayfa.AddNewProButton(anaSayfa, 'girisButton', 'Giriş Yap'); girisButton.Margins.Top = 100; girisButton.Width = 160; girisButton.Height = 40; girisButton.clProSettings.RoundWidth = 20; girisButton.clProSettings.RoundHeight = 20; girisButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2196F3'); girisButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); girisButton.SetclProSettings(girisButton.clProSettings); anaSayfa.AddNewEvent(girisButton, tbeOnClick, 'GirisYap'); kayitButton = anaSayfa.AddNewProButton(anaSayfa, 'kayitButton', 'Kayıt Ol'); kayitButton.Margins.Top = 160; kayitButton.Width = 160; kayitButton.Height = 40; kayitButton.clProSettings.RoundWidth = 20; kayitButton.clProSettings.RoundHeight = 20; kayitButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4CAF50'); kayitButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); kayitButton.SetclProSettings(kayitButton.clProSettings); anaSayfa.AddNewEvent(kayitButton, tbeOnClick, 'KayitOl'); anaSayfa.Run; } void ShowPostLoginScreen(userName: string); var welcomeLabel: TclProLabel; notAraButton, notEkleButton: TclProButton; notAraEdit: TclProEdit; notLabel: TclProLabel; { if not (Assigned(postLoginSayfa)) postLoginSayfa = TclForm.Create(Self); postLoginSayfa.SetFormBGImage('https://i.hizliresim.com/km8rak7.png'); welcomeLabel = postLoginSayfa.AddNewProLabel(postLoginSayfa, 'welcomeLabel', 'Hoşgeldiniz, ' + userName + '!'); welcomeLabel.Align = alNone; welcomeLabel.Position.X = 20; welcomeLabel.Position.Y = 120; welcomeLabel.Width = 300; welcomeLabel.Height = 75; welcomeLabel.clProSettings.FontSize = 15; welcomeLabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#0be5ae'); welcomeLabel.SetclProSettings(welcomeLabel.clProSettings); notLabel = postLoginSayfa.AddNewProLabel(postLoginSayfa, 'notLabel', 'Not Ara:'); notLabel.Align = alNone; notLabel.Position.X = 50; notLabel.Position.Y = 240; notLabel.Width = 100; notLabel.Height = 30; notLabel.clProSettings.FontSize = 16; notLabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000'); notLabel.SetclProSettings(notLabel.clProSettings); notAraEdit = postLoginSayfa.AddNewProEdit(postLoginSayfa, 'notAraEdit', ''); notAraEdit.Align = alNone; notAraEdit.Position.X = 120; notAraEdit.Position.Y = 240; notAraEdit.Width = 200; notAraEdit.Height = 45; notAraEdit.clProSettings.RoundWidth = 20; notAraEdit.clProSettings.RoundHeight = 20; notAraEdit.SetclProSettings(notAraEdit.clProSettings); notAraButton = postLoginSayfa.AddNewProButton(postLoginSayfa, 'notAraButton', 'Ara'); notAraButton.Align = alNone; notAraButton.Position.X = 160; notAraButton.Position.Y = 310; notAraButton.Width = 120; notAraButton.Height = 45; notAraButton.clProSettings.RoundWidth = 20; notAraButton.clProSettings.RoundHeight = 20; notAraButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4CAF50'); notAraButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); notAraButton.SetclProSettings(notAraButton.clProSettings); postLoginSayfa.AddNewEvent(notAraButton, tbeOnClick, 'NotAra'); notEkleButton = postLoginSayfa.AddNewProButton(postLoginSayfa, 'notEkleButton', 'Not Ekle'); notEkleButton.Align = alNone; notEkleButton.Position.X = 160; notEkleButton.Position.Y = 350; notEkleButton.Width = 120; notEkleButton.Height = 45; notEkleButton.clProSettings.RoundWidth = 20; notEkleButton.clProSettings.RoundHeight = 20; notEkleButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#FF5722'); notEkleButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); notEkleButton.SetclProSettings(notEkleButton.clProSettings); postLoginSayfa.AddNewEvent(notEkleButton, tbeOnClick, 'ShowNotEkleScreen'); postLoginSayfa.Run; } void KaydetNot; { try Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'MuhabirMobil.db', ''); ShowMessage('Veritabanına bağlanıldı.'); Clomosy.DBSQLiteQuery.Sql.Text = 'SELECT * FROM Notes WHERE note_title = ' + QuotedStr(notBasligiEdit.Text) + ' AND note_content = ' + QuotedStr(notIcerigiEdit.Text); Clomosy.DBSQLiteQuery.OpenOrExecute; if not (Clomosy.DBSQLiteQuery.Found) { Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO Notes (note_title, note_content) VALUES (' + QuotedStr(notBasligiEdit.Text) + ', ' + QuotedStr(notIcerigiEdit.Text) + ');'; Clomosy.DBSQLiteQuery.OpenOrExecute; ShowMessage('Not başarıyla kaydedildi!'); // Not eklendikten sonra giriş ekranına dön ShowPostLoginScreen('Kullanıcı'); } else { ShowMessage('Bu not zaten mevcut.'); } except ShowMessage('Not kaydı sırasında bir hata oluştu: ' + LastExceptionMessage); } } void ShowNotEkleScreen; var MyForm: TclForm; notBasligiLabel, notIcerigiLabel: TclProLabel; notBasligiEdit: TclProEdit; notIcerigiScrollBox: TCLVertScrollBox; notIcerigiEdit: TclProEdit; kaydetButton: TclProButton; { MyForm = TclForm.Create(Self); MyForm.SetFormBGImage('https://i.hizliresim.com/km8rak7.png'); notBasligiLabel = MyForm.AddNewProLabel(MyForm, 'notBasligiLabel', 'Not Başlığı:'); notBasligiLabel.Align = alNone; notBasligiLabel.Position.X = 30; notBasligiLabel.Position.Y = 50; notBasligiEdit = MyForm.AddNewProEdit(MyForm, 'notBasligiEdit', ''); notBasligiEdit.Align = alNone; notBasligiEdit.Position.X = 130; notBasligiEdit.Position.Y = 50; notBasligiEdit.Width = 200; notBasligiEdit.Height = 30; notIcerigiLabel = MyForm.AddNewProLabel(MyForm, 'notIcerigiLabel', 'Not İçeriği:'); notIcerigiLabel.Align = alNone; notIcerigiLabel.Position.X = 30; notIcerigiLabel.Position.Y = 100; notIcerigiScrollBox = MyForm.AddNewVertScrollBox(MyForm, 'notIcerigiScrollBox'); notIcerigiScrollBox.Align = alNone; notIcerigiScrollBox.Position.X = 130; notIcerigiScrollBox.Position.Y = 100; notIcerigiScrollBox.Width = 200; notIcerigiScrollBox.Height = 150; notIcerigiScrollBox.ShowScrollBars = True; notIcerigiEdit = MyForm.AddNewProEdit(notIcerigiScrollBox, 'notIcerigiEdit', ''); notIcerigiEdit.Align = alTop; notIcerigiEdit.Width = notIcerigiScrollBox.Width - 20; notIcerigiEdit.Height = notIcerigiScrollBox.Height * 2; notIcerigiEdit.Margins.Top = alTop; notIcerigiEdit.TextSettings.VertAlign=1; notIcerigiEdit.TextSettings.WordWrap=True; kaydetButton = MyForm.AddNewProButton(MyForm, 'kaydetButton', 'Kaydet'); kaydetButton.Align = alNone; kaydetButton.Position.X = 150; kaydetButton.Position.Y = 270; kaydetButton.Width = 100; kaydetButton.Height = 40; kaydetButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4CAF50'); kaydetButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); kaydetButton.SetclProSettings(kaydetButton.clProSettings); if (Assigned(kaydetButton)) { try MyForm.AddNewEvent(kaydetButton, tbeOnClick, 'KaydetNot'); except ShowMessage('Event bağlanırken bir hata oluştu.'); }; }; MyForm.Run; } void GirisYap; { if not (Assigned(girisSayfa)) girisSayfa = TclForm.Create(Self); girisSayfa.SetFormBGImage('https://i.hizliresim.com/phhojjq.jpg'); nameG = girisSayfa.AddNewProEdit(girisSayfa, 'nameG', 'İsminiz:'); nameG.Margins.Top = 150; nameG.Width = 350; nameG.Height = 45; nameG.clProSettings.RoundWidth = 20; nameG.clProSettings.RoundHeight = 20; nameG.SetclProSettings(nameG.clProSettings); surnameG = girisSayfa.AddNewProEdit(girisSayfa, 'surnameG', 'Soyisminiz:'); surnameG.Margins.Top = 210; surnameG.Width = 350; surnameG.Height = 45; surnameG.clProSettings.RoundWidth = 20; surnameG.clProSettings.RoundHeight = 20; surnameG.SetclProSettings(surnameG.clProSettings); passwordG = girisSayfa.AddNewProEdit(girisSayfa, 'passwordG', 'Şifreniz:'); passwordG.Margins.Top = 270; passwordG.Width = 350; passwordG.Height = 45; passwordG.clProSettings.RoundWidth = 20; passwordG.clProSettings.RoundHeight = 20; passwordG.Password = True; passwordG.SetclProSettings(passwordG.clProSettings); girisButton = girisSayfa.AddNewProButton(girisSayfa, 'girisButton', 'Giriş Yap'); girisButton.Margins.Top = 350; girisButton.Width = 160; girisButton.Height = 40; girisButton.clProSettings.RoundWidth = 20; girisButton.clProSettings.RoundHeight = 20; girisButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2196F3'); girisButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); girisButton.SetclProSettings(girisButton.clProSettings); girisSayfa.AddNewEvent(girisButton, tbeOnClick, 'KullaniciKontrolEt'); girisSayfa.Run; } void KayitOl; { if not (Assigned(kayitSayfa)) kayitSayfa = TclForm.Create(Self); kayitSayfa.SetFormBGImage('https://i.hizliresim.com/phhojjq.jpg'); nameK = kayitSayfa.AddNewProEdit(kayitSayfa, 'nameK', 'İsminiz:'); nameK.Margins.Top = 150; nameK.Width = 350; nameK.Height = 45; nameK.clProSettings.RoundWidth = 20; nameK.clProSettings.RoundHeight = 20; nameK.SetclProSettings(nameK.clProSettings); surnameK = kayitSayfa.AddNewProEdit(kayitSayfa, 'surnameK', 'Soyisminiz:'); surnameK.Margins.Top = 210; surnameK.Width = 350; surnameK.Height = 45; surnameK.clProSettings.RoundWidth = 20; surnameK.clProSettings.RoundHeight = 20; surnameK.SetclProSettings(surnameK.clProSettings); passwordK = kayitSayfa.AddNewProEdit(kayitSayfa, 'passwordK', 'Şifreniz:'); passwordK.Margins.Top = 270; passwordK.Width = 350; passwordK.Height = 45; passwordK.clProSettings.RoundWidth = 20; passwordK.clProSettings.RoundHeight = 20; passwordK.Password = True; passwordK.SetclProSettings(passwordK.clProSettings); kayitButton = kayitSayfa.AddNewProButton(kayitSayfa, 'kayitButton', 'Kayıt Ol'); kayitButton.Margins.Top = 350; kayitButton.Width = 160; kayitButton.Height = 40; kayitButton.clProSettings.RoundWidth = 20; kayitButton.clProSettings.RoundHeight = 20; kayitButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#4CAF50'); kayitButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF'); kayitButton.SetclProSettings(kayitButton.clProSettings); kayitSayfa.AddNewEvent(kayitButton, tbeOnClick, 'SqLiteInsertUser'); kayitSayfa.Run; } void SqLiteInsertUser; { try Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath+'MuhabirMobil.db', ''); ShowMessage('Veritabanına bağlanıldı.'); Clomosy.DBSQLiteQuery.Sql.Text = 'SELECT * FROM Users WHERE user_name = ' + QuotedStr(nameK.Text) + ' AND user_surname = ' + QuotedStr(surnameK.Text); Clomosy.DBSQLiteQuery.OpenOrExecute; if not (Clomosy.DBSQLiteQuery.Found) { Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO Users (user_name, user_surname, user_password) VALUES (' + QuotedStr(nameK.Text) + ', ' + QuotedStr(surnameK.Text) + ', ' + QuotedStr(passwordK.Text) + ');'; Clomosy.DBSQLiteQuery.OpenOrExecute; ShowMessage('Başarılı bir şekilde kayıt olundu!'); kayitSayfa.clHide; GirisYap; } else { ShowMessage('Bu kullanıcı zaten mevcut.'); } except ShowMessage('Kayıt sırasında bir hata oluştu: ' + LastExceptionMessage); } } void SqLiteConnectionCreateTable; var TableExists: Boolean; { try Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath+'MuhabirMobil.db', ''); ShowMessage('Veritabanına bağlanıldı.'); Clomosy.DBSQLiteQuery.Sql.Text = 'SELECT name FROM sqlite_master WHERE type="table" AND name="Users";'; Clomosy.DBSQLiteQuery.OpenOrExecute; TableExists = not (Clomosy.DBSQLiteQuery.Eof); if not (TableExists) { Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE Users(user_id INTEGER PRIMARY KEY AUTOINCREMENT, user_name TEXT, user_surname TEXT, user_password TEXT)'; Clomosy.DBSQLiteQuery.OpenOrExecute; ShowMessage('Kullanıcı tablosu başarıyla oluşturuldu!'); } else { ShowMessage('Kullanıcı tablosu zaten mevcut.'); } Clomosy.DBSQLiteQuery.Sql.Text = 'SELECT name FROM sqlite_master WHERE type="table" AND name="Notes";'; Clomosy.DBSQLiteQuery.OpenOrExecute; TableExists = not (Clomosy.DBSQLiteQuery.Eof); if not (TableExists) { Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE Notes(' + 'note_id INTEGER PRIMARY KEY AUTOINCREMENT, ' + 'note_title TEXT, ' + 'note_content TEXT)'; Clomosy.DBSQLiteQuery.OpenOrExecute; ShowMessage('Notes tablosu başarıyla oluşturuldu!'); } else { ShowMessage('Notes tablosu zaten mevcut.'); } except ShowMessage('Veritabanı işlemleri sırasında bir hata oluştu: ' + LastExceptionMessage); } } void KullaniciKontrolEt; var Qry: TClSQLiteQuery; { try Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath+'MuhabirMobil.db', ''); ShowMessage('Veritabanına bağlanıldı.'); Qry = Clomosy.DBSQLiteQueryWith( 'SELECT * FROM Users WHERE user_name = ' + QuotedStr(nameG.Text) + ' AND user_surname = ' + QuotedStr(surnameG.Text) + ' AND user_password = ' + QuotedStr(passwordG.Text)); Qry.OpenOrExecute; if (Qry.Found) { ShowMessage('Başarılı bir şekilde giriş yapıldı!'); girisSayfa.clHide; ShowPostLoginScreen(nameG.Text); } else { ShowMessage('Kullanıcı bulunamadı. Lütfen tekrar deneyin.'); } except ShowMessage('Giriş sırasında bir hata oluştu: ' + LastExceptionMessage); } } { SqLiteConnectionCreateTable; ShowAnaSayfa; } |
|
Mustafa Çetin
|
|
BilalCndn
Forum Yöneticisi Kayıt Tarihi: 09 Ekim 2023 Durum: Aktif Değil Puanlar: 150 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı BilalCndn
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
|
Merhaba Mustafa,
Hatanın tam halini paylaşır mısın?
|
|
MustafaCetin
Yeni Üye Kayıt Tarihi: 19 Ağustos 2024 Konum: Konya Durum: Aktif Değil Puanlar: 13 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı MustafaCetin
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
|
Not Kaydı sırasında bir hata oluştu:Access violation at address 00A7A564 in moulde'ClomosyLearn.exe'.Read of address 0000000
hata bu kullanıcı kayıt olabiliyor giriş yapıyor ve bu veriler sqlite da gözüküyor . Not kayıt için sqlite da tablo oluşturuyor ama not için veri oluşturmuyor. |
|
Mustafa Çetin
|
|
BilalCndn
Forum Yöneticisi Kayıt Tarihi: 09 Ekim 2023 Durum: Aktif Değil Puanlar: 150 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı BilalCndn
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
|
Merhaba Mustafa,
Not ekle sayfasındaki form ve nesneleri 'ShowNotEkleScreen' void'i içerisinde tanımladığın için diğer voidlerin içerisinden erişemezsin. var kısmındaki nesneleri global olarak tanımlarsan sorunun çözülecektir. İyi çalışmalar dilerim.
|
|
Yanıt Yaz | |
Tweet |
Forum Atla | Forum İzinleri Kapalı Foruma Yeni Konu Gönderme Kapalı Forumdaki Konulara Cevap Yazma Kapalı Forumda Cevapları Silme Kapalı Forumdaki Cevapları Düzenleme Kapalı Forumda Anket Açma Kapalı Forumda Anketlerde Oy Kullanma |