DB'den kayıt okuma ve kayıt kontrolü..

Delphi .net ve .net ile ilgili konuları buraya yazabilirsiniz.
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

tamm hocam bende diğer aşamaların dizaynınla uğraşayım en azından valla ne biçim işmiş bu yaf :) bi çözsem gerisi gelicek ama bu veriyi .fill ettiğimde içeride bir değer yok gibisinden laflar ediyor.. neyse hocam yardımlarını bekler iyi çalışmalar dilerim sana

Saygılarımla,
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

access veritabanına bağlantı

Kod: Tümünü seç

data source="D:\DenemeData\WebAcDeneme.mdb";persist security info=False
ado netle.referansları göndereyim.
referanslar

Kod: Tümünü seç

uses
  System.Collections, System.ComponentModel,
  System.Data, System.Drawing, System.Web, System.Web.SessionState,
  System.Web.UI, System.Web.UI.WebControls, System.Web.UI.HtmlControls,
  System.Data.Common, Borland.Data.Provider, Borland.Data.Common, dsLoginUnit,
  System.Globalization, Borland.Data.Web, System.Data.SqlClient;
kolay gelsin.
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

hocam aynı senin dediğin gibi denedim ama yine sonuç alamadım aşağıya benim kodları yazıyorum..

Kod: Tümünü seç

procedure TWebForm1.Button1_Click(sender: System.Object; e: System.EventArgs);
const
  CnStr =
    'data source="C:\Inetpub\wwwroot\WebApplication5\ustadb.mdb";persist security info=False';
  SS = 'SELECT * FROM Tablo1';
var
  SqlCn: SqlConnection;
  SqlDA: SqlDataAdapter;
  ds: DataSet;
  S: &string;
  dt: DataTable;
  C: Integer;
begin
begin
  if not ((TxtUsername.Text = '') and (TxtSifre.Text = '')) then
  begin
    S := SS + ' WHERE KulAdi=''' + TxtUsername.Text + ''' AND SIFRE=''' +
      TxtSifre.Text
      + '''';
    SqlCn := SqlConnection.Create(CnStr);
    SqlDA := SqlDataAdapter.Create(S, SqlCn);
    ds := DataSet.Create;
    SqlDA.Fill(ds, 'Tablo1');
    dt := ds.Tables['Tablo1'];
    DataBind;
    C := dt.Rows.Count;
if c = 1 then
    begin
      if IsPostBack then
        Response.Redirect(System.string.Format(c_UrlStr, [TxtUsername,
          TxtSifre.Text]));  => Buradaki c_UrlStr'de hata veriyor 
    end
    else
    begin
      SqlCn.Close;
      Durum.Text := 'Kullanıcı Adı Yada Şifre Yanlış';
    end;
end;
end;
end;
Hocam kodlar yukarıdaki gibi birde refernaslarımı gönderiyorum

Kod: Tümünü seç

uses
  System.Collections, System.ComponentModel,
  System.Data, System.Drawing, System.Web, System.Web.SessionState,
  System.Web.UI, System.Web.UI.WebControls, System.Web.UI.HtmlControls,
  System.Data.OleDb, System.Web.Security, Borland.Vcl.SysUtils, Borland.Vcl.Db,
  System.Data.SqlClient, System.Globalization, Borland.Data.Web, Borland.Data.Provider,
  Borland.Data.Common ;
ama yinede program SqlDA.Fill(ds, 'tablo1') kısmına geldiğinde arka tarafta "INVALID CONNECTION" diyor.. yani bağlanamıyor.. nerede hata yapıyorum acaba?

Saygılarımla,
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

hocam c_urlstr kısmını yukarıda tanımlaman gerekiyor.o bir değişken.eğerki kullanıcı doğrulanırsa hangi sayfaya gideceğini gösteriyor.
bir onu deneyin.bende sizin kodları deneyeyim.
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

tmm hocam değişkeni tanımlarım o hatayı ortadan kaldırırım sorun değil, ama benim asıl sorunum
SqlDA.Fill(ds,'tablo1'); kısmındaki bölümden kaynaklanıyor yani DB ye bağlanmıyor :(

seni bekliyorum hocam..

Saygılarımla,
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

hocam accesse bağlanmayı denedim epey. ama bağlanamadım. yani olayı görsel olarak yapmaya çalıştım yine olmadı. bu gönderdiğim kodlar en son test yaptım sql server ile güzel çalışıyor. yani accesse bağlanamadığından kaynaklı hatalar veriyor.

kod:

Kod: Tümünü seç

procedure TWebForm1.Button1_Click(sender: System.object; e: System.EventArgs);
const
 // CnStr = ;
  SS = 'SELECT * FROM COMKULLANICI';

var
  //lCn: SqlConnection;
  SqlDA: SqlDataAdapter;
  ds: DataSet;
  S: &string;
  dt: DataTable;
  C: Integer;
begin
  begin
    if not ((UserName.Text = '') and (Sifre.Text = '')) then
    begin
      S := SS + ' WHERE AD=''' + UserName.Text + ''' AND SIFRE=''' +
        Sifre.Text + '''';
      SqlCn := SqlConnection.Create('user id=sa;data source=Admin;persist security info=False;initial catalog=WebStok');
      SqlCn.Open;
      SqlDA := SqlDataAdapter.Create(S, SqlCn);
      ds := DataSet.Create;
      SqlDA.Fill(ds, 'COMKULLANICI');
      dt := ds.Tables['COMKULLANICI'];

      DataBind;
      C := dt.Rows.Count;
      if c = 1 then
      begin
        if IsPostBack then
          Response.Redirect(System.string.Format(c_UrlStr, [UserName.Text,
            Sifre.Text])); // = > Buradaki c_UrlStr'de hata veriyor
      end
      else
      begin
        SqlCn.Close;
        //Durum.Text := 'Kullanıcı Adı Yada Şifre Yanlış';
      end;
    end;
  end;


end;
meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

hocam bu
c_UrlStr => tanımındanmı kaynaklanıyor acaba problem bu bir fonksiyonmu deği$kenmi nedir? acaba?

senin kodlarının içerisindede göremedim ben bunu hocam... hala beceremedik gitti ya :cry:

Saygılarımla,
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

hocam accesse bağlanamadım.sql server kurulu ise bilgisayarında sorunsuz çalışıyor.

Kod: Tümünü seç

const
  c_UrlStr = 'WebForm2.aspx';
hata invalit connetion du değilmi.connection dan kaynaklı.
bir de şu kısımı gönderirken hata yapmışım.

Kod: Tümünü seç

var 
  //lCn: SqlConnection; //doğrusu =SqlCn
hala access le bağlanmıya çalışıyorsan kesin olarak çalışmayacaktır.neden böyle bir şey yapıyor anlamadım.
kolay gelsin.
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

Mesaj gönderen Fatih! »

meren
Üye
Mesajlar: 71
Kayıt: 20 Ara 2004 03:44

Mesaj gönderen meren »

arkadaşlar yardımlarınızdan ve ilgilerinizden dolayı herkeze teşekkür ederim şuanki problemimi çözmüş bulunmaktayım Ado.NET ile herkeze sevgiler saygılar arkadaşlar, kendinize iyi bakın

koduda aşağıya yazayımda ihtiyacı olan varsa kullanır bilgi olur en azından

Kod: Tümünü seç

Var
komut : OleDBcommand;
baglanti : OleDBConnection;
Tablo   : Datatable;
VeriTasiyici : OleDBDataAdapter;
  C: Integer;

begin
begin
  if not ((TxtUsername.Text = '') and (TxtSifre.Text = '')) then
  begin
  baglanti  := OleDbConnection.Create('Provider=Microsoft.JET.OleDB.4.0;'+
        'data source=' + server.MapPath('userdb.mdb'));
komut  := OleDbCommand.Create;
komut.Connection := baglanti;

Komut.CommandText  := 'Select * from Tablo1 WHERE KulKodu="' + TxtUsername.Text + '"'+' AND Sifre="'+TxtSifre.Text+'"';

veritasiyici  := OleDBDataAdapter.Create;
Veritasiyici.SelectCommand := komut;

Tablo := DataTable.Create;
baglanti.Open;
Veritasiyici.Fill(tablo);
baglanti.Close;
    DataBind;
    C := Tablo.Rows.Count;
if c = 1 then
    begin
      if IsPostBack then
        Response.Redirect(System.string.Format('bayi.aspx', [TxtUsername,
          TxtSifre.Text]));
    end
    else
    begin
      Baglanti.Close;
      Durum.Text := 'Kullanıcı Adı Yada Şifre Yanlış';
    end;
end;
end;
Kullanıcı adı ve şifresi Acccess Veritabanıntan yapan örnek koddur..

Saygılarımla,
Cevapla