Zoque.Forum
Dirsek Teması:
Geri Dön Zoque.Forum » Webmaster Kaynaklari » Sunucu Tabanlı Programlama (Server Side) » Veritabanları » Basit Bir Forum (ASP.NET + Access)


Veritabanları MySQL , MSSQL, SQL, Access, Oracle

Yanıt
 
LinkBack Seçenekler
Old 21.02.2007   #1 (permalink)
FikretAkın
 
FikretAkın's Avatar
 
Üyelik Tarihi: 05.01.2006
Yer: İstanbul
Yaş: 22
Mesaj: 290
Basit Bir Forum (ASP.NET + Access)

Evet, arkadaşlar bu makalem de basit bir forum uygulaması yapacağız. İlk olarak şunu belirtmeliyim Access veritabanına kayıt yapıcağız ve ASP.Net in DataGrid Fonksiyonu ile verileri okuyup kullanıcılara yansıtacağız. forum yönetici tarafından kontrol edilebiliyor olacaktır.
Bu makale ve uygulamayı yazmamdaki amacım en basitinden ASP.net ile forumun nasıl yapıldığı ve forumların nasıl çalıştığını göstermektir.
Kodlarla ilgili gerekli açıklamalar yanlarına yazılmıştır. Projemize Ana sayfadan başlıyoruz.
Default.aspx in source kısmına aşağıdaki kodları yazıyoruz.

Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Basit forum Uygulaması</title>

<script type="text/JavaScript" language="JavaScript"> // Kullanıcı İsimini yazıp yazmadıgını kontrol edip uyarı Mesajı Veriyoruz.
function Validate(theForm)
{
if (theForm.FrmKullaniciAdi.value == "")
{
alert("Lütfen isminizi yazın");
theForm.FrmKullaniciAdi.focus();
return (false);
}
return (true)
}
</script>

</head>

<body onload="JavaScript: document.form1.FrmKullaniciAdi.focus()">
<form id="form1" method="post" runat="server" onSubmit="return Validate(this)">
<table border="0" align="center" cellspacing="1" cellpadding="5">
<tr>
<td width="100%" style="height: 94px">
<b>Foruma Giriş İçin İsminizi Yazın:</b>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">
İsminiz :
<ASP:TextBox id="FrmKullaniciAdi" runat="server" Columns="15"></ASP:TextBox>
</td>
<td valign="top" rowspan="2">
<ASP:Button id="Button1" runat="server" OnClick="DoLogin" Text="Tamam"></ASP:Button>
</td>
</tr>
<tr>
<td valign="top" align="right">
<ASP:TextBox id="FrmSifre" Visible="False" runat="server" Columns="15" TextMode="Password"></ASP:TextBox>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</body>
</HTML>
Daha sonra Default.aspx.cs ye aşağıdaki kodları yazıyoruz.

Kod:
using System;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Collections;
using System.web;
using System.web.Security;
using System.web.UI;
using System.web.UI.WebControls;
using System.web.UI.WebControls.WebParts;
using System.web.UI.HtmlControls;

public partial class _Default : System.web.UI.Page
{
public void DoLogin(object sender, System.EventArgs e)
{
if (FrmKullaniciAdi.Text == "admin") // Eger kullanıcı isminiz bölümüne admin yazarsa hemen alt kısmında şifre girilmesi için bölüm çıkacaktır
{
if (FrmSifre.Text == "Sifre") // Altta çıkacak bölüme Sifre yazılırsa
{
Session["KullaniciAdi"] = FrmKullaniciAdi.Text;
Session["admin"] = "yes";
Response.Redirect("Konular.aspx");// Kullanıcıya Silme yetkisi verilerek konular bölümüne yönlendirir.
}
else
{
FrmSifre.Visible = true; // Eger Kullanıcı parolayı dogru girmezse izin vermez.
}
}
else // Yukardaki koşullar oluşmazsa yazılan adı hafızaya alarak Konular a yönlendirir.
{
Session["KullaniciAdi"] = FrmKullaniciAdi.Text;
Response.Redirect("Konular.aspx");
}
}
}
Şimdi ise kullanıcının foruma konu eklemesi için KonuEkle.aspx i yaratalım

Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="KonuEkle.aspx.cs" Inherits="KonuEkle" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Konu Ekle</title>
<script type="text/JavaScript" Language="JavaScript">
function Validate(theForm)
{
if (theForm.frmPost.value == "")
{
alert("Lütfen Yeni Konu İsmini Girin");
theForm.frmPost.focus();
return (false);
}
return (true)
}
</script>
</head>
<body>
<form id="AddTopic" method="post" runat="server" onSubmit="return Validate(this)">
<h2>
BasitForum
</h2>
<p>
İlkbaşta Girilen Kullanıcı Adı İle Foruma Yeni Konu Ekliyebiliyoruz
</p>
<div id="outError" runat="server">
<table cellpadding="5" cellspacing="1" border="0" class="DataTable">
<tr>
<td class="TableItem">
Konu Yaratan :
<ASP:Label ID="FrmAdi" Runat="server"></ASP:Label>
<br />
Yeni Konu Adı : (Maksimum 255 Karakter )
<br />
<ASP:TextBox id="frmPost" runat="server" TextMode="MultiLine" MaxLength="255" Columns="40" Rows="5"></ASP:TextBox>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" align="right">
<ASP:Button onClick="DoAddTopic" Text="Ekle" Runat="server" id="Button1"></ASP:Button>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br />
<a href="Konular.aspx">Konulara Geri Dön</a>
</div>
</form>
</body>
</HTML>
Daha sonra KonuEkle.aspx.cs ye aşağıdaki kodları yazıyoruz.

Kod:
using System;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Collections;
using System.web;
using System.web.Security;
using System.web.UI;
using System.web.UI.WebControls;
using System.web.UI.WebControls.WebParts;
using System.web.UI.HtmlControls;

public partial class KonuEkle : System.web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// Kullanıcı Adını Kontrol Ediyoruz.
if (Session["KullaniciAdi"].ToString().Length < 1)
{
Response.Redirect("default.aspx");
}
FrmAdi.Text = "<b>" + Session["KullaniciAdi"].ToString() + "</b>";
}

public void DoAddTopic(object sender, System.EventArgs e)
{
string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + server.MapPath(".\\db\\forum.mdb"); // Veritabanı Baglantı Cümlesi
string strInsert = "INSERT INTO Konular (KonuBasligi, KonuSahibi) VALUES ('" + frmPost.Text + "', '" + Session["KullaniciAdi"].ToString() + "')"; // Kullanıcı tarafından yazılan Konu adını ve kullanıcın adını veritabanımızdaki Konular tablosundaki KonuBasligi ve KonuSahibi bölümlerine ekliyoruz.
try
{
//Yeni baglantı yaratıyoruz
OleDbConnection objConnect = new OleDbConnection(strConnect);

// Veritabanı ile baglantıyı açıyoruz.
objConnect.Open();
OleDbCommand objCommand = new OleDbCommand(strInsert, objConnect);
objCommand.ExecuteNonQuery();

// Veritabanı ile baglantıyı kapatıyoruz.
objConnect.Close();

// Konular.aspx' e Yönlendiriliyor
Response.Redirect("Konular.aspx", true);
}

catch (Exception objError)
{
//Hata varsa mesaj yazdırıyoruz.
outError.InnerHtml = "<b>* Veritabanına baglantı hatası</b>.<br />" + objError.Message + "<br />" + objError.Source;
return;
}
}
}
Şimdi ise forumun konularının listelenmesi için Konular. aspx i kodluyoruz.

Konular. aspx in source kısmına aşağıdaki kodları yazıyoruz.

Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Konular.aspx.cs" Inherits="Konular" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Konular</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>
Basit forum
</h3>
<div id="welcome" runat="server" />
<a href="KonuEkle.aspx">Yeni Konu Ekle</a>
<p />
<div id="outError" runat="server">
<ASP:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False" HeaderStyle-CssClass="TableHeader" AlternatingItemStyle-CssClass="AltTableItem" ItemStyle-CssClass="TableItem" CellPadding="4" ForeColor="#333333" GridLines="None">
<Columns>
<ASP:TemplateColumn HeaderText="Yazar">
<ItemTemplate>
<ASP:Label Runat='server' ID="lblAdminLink">
<%# DataBinder.Eval(Container.DataItem, "KonuSahibi") %>
<% if (Session["admin"] == "yes")
{ %>
<br>
<a href="KayitSilme.aspx?T=T&ID=<%# DataBinder.Eval(Container.DataItem, "KonuID") %>">
Sil</a>
<% }
%>
<br>
</ASP:Label>
</ItemTemplate>
</ASP:TemplateColumn>
<ASP:TemplateColumn HeaderText="Konu">
<ItemTemplate>
<ASP:Label Runat='server' ID="lblSubject">
<a href="Mesajlar.aspx?ID=<%# DataBinder.Eval(Container.DataItem, "KonuID") %>&S=<%# DataBinder.Eval(Container.DataItem, "KonuBasligi") %>">
<%# DataBinder.Eval(Container.DataItem, "KonuBasligi") %>
</a>
</ASP:Label>
</ItemTemplate>
</ASP:TemplateColumn>
<ASP:BoundColumn DataField="KonuTarihi" HeaderText="Yazıldıgı Tarih"></ASP:BoundColumn>
</Columns>
<FooterStyle BackColor="#507CD1" font-Bold="True" ForeColor="White" />
<EditItemStyle BackColor="#2461BF" />
<SelectedItemStyle BackColor="#D1DDF1" font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<AlternatingItemStyle BackColor="White" />
<ItemStyle BackColor="#EFF3FB" />
<HeaderStyle BackColor="#507CD1" font-Bold="True" ForeColor="White" />
</ASP:DataGrid> </div>
</form>
</body></HTML>
Daha sonra Konular.aspx.cs ye aşağıdaki kodları yazıyoruz.

Kod:
using System;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Collections;
using System.web;
using System.web.Security;
using System.web.UI;
using System.web.UI.WebControls;
using System.web.UI.WebControls.WebParts;
using System.web.UI.HtmlControls;

public partial class Konular : System.web.UI.Page
{
public void Page_Load(object sender, System.EventArgs e)
{
if (Session["KullaniciAdi"] == null)// Kullanıcının girişte yazmış oldugu isim veritabanından okunur
{
Response.Redirect("default.aspx");
}
welcome.InnerHtml = "Merhaba " + Session["KullaniciAdi"] + ", yeni konu ekleyebilir veya mevcut olan konulara bakabilirsiniz.<P>";
ListKonular();
}

public void ListKonular()
{
string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + server.MapPath(".\\db\\forum.mdb");
string strSelect = "SELECT * FROM Konular ORDER BY KonuTarihi DESC";
try
{
//Yeni baglantı yaratıyoruz
OleDbConnection objConnect = new OleDbConnection(strConnect);
//Veritabanı ile baglantıyı açıyoruz
objConnect.Open();
OleDbCommand objCommand = new OleDbCommand(strSelect, objConnect);
OleDbDataReader objDataReader;
objDataReader = objCommand.ExecuteReader();
DataGrid1.DataSource = objDataReader;
DataGrid1.DataBind();
if (DataGrid1.Items.Count == 0) // Eger konuya mesaj yazılmamışsa mesaj verdiriyoruz.
{
outError.InnerHtml = "Henüz Mesaj Yazılmamış..";
}
//DataReader ve Veritabanı Baglantısını Kapatıyoruz
objDataReader.Close();
objConnect.Close();
}

catch (Exception objError)
{
outError.InnerHtml = "<b>* Veritabanına baglantı hatası</b>.<br />"
+ objError.Message + "<br />" + objError.Source; //Hata varsa mesaj yazdırıyoruz.
return;
}
}

}
forum yetkilisinin istenmeyen konu veya mesajları silmesi için KayitSilme.aspx i oluşturalım

Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="KayitSilme.aspx.cs" Inherits="KayitSilme" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Kayit silme</title>
</head>
<body>
<div id="outError" runat="server">
</div>
</body>
</HTML>
KayitSilme.aspx.cs ye asagidaki kodlari yaziyoruz.

Kod:
using System;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Collections;
using System.web;
using System.web.Security;
using System.web.UI;
using System.web.UI.WebControls;
using System.web.UI.WebControls.WebParts;
using System.web.UI.HtmlControls;

public partial class KayitSilme : System.web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + server.MapPath(".\\db\\forum.mdb"); // Veritabanı Baglantı Cümlesi
string strDELETE = "DELETE * FROM ";// String deger oluşturuyor
string strURL;

if (Request.QueryString["T"] == "T")
{
strDELETE += "Konular WHERE KonuID = " + Request.QueryString["ID"]; // Silinecek konu KonuID sine bakılıp silinmek üzere strDELETE degişkenine atanır.
strURL = "Konular.aspx";
}
else
{
strDELETE += "Mesajlar WHERE MesajID = " + Request.QueryString["ID"];// Mesaj silmek için MesajID sine bakılıp silinmek üzere strDELETE degişkenine atanır.
strURL = "Mesajlar.aspx?ID=" + Request.QueryString["TID"] + "&S=" + Request.QueryString["S"];
}
try
{
OleDbConnection objConnect = new OleDbConnection(strConnect); // Yeni baglantı yaratıyoruz
objConnect.Open();// Veritabanı ile baglantıyı açıyoruz.
OleDbCommand objCommand = new OleDbCommand(strDELETE, objConnect);// Verilen silme işlemini yapıyoruz
objCommand.ExecuteNonQuery();
objConnect.Close(); // Veritabanı ile baglantıyı kapatıyoruz.
Response.Redirect(strURL);
}
catch (Exception objError)
{
outError.InnerHtml = "<b>Veritabanınıa baglantı hatası</b>.<br />" + objError.Message + "<br />" + objError.Source; //Hata varsa mesaj yazdırıyoruz.
}
}

}
Ve son olarak ta Mesajlar.aspx i olusturuyoruz.

Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Mesajlar.aspx.cs" Inherits="Mesajlar" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Mesajlar</title>
<script type="text/JavaScript" Language="JavaScript">
function Validate(theForm)
{
if (theForm.frmPost.value == "")
{
alert("Lütfen Mesajınızı Yazınız.");
theForm.frmPost.focus();
return (false);
}
return (true)
}
</script>
</head>
<body>
<form id="AddPosting" method="post" runat="server" onSubmit="return Validate(this)">
<h2> Basit forum</h2>
<div ID="KonuBasligi" Runat="server">
</div>
<p>
İlkbaşta Girilen Kullanıcı Adı İle Foruma Yeni Mesaj Ekliyoruz
</p>
<div id="Div1" runat="server">
<table cellpadding="5" cellspacing="1" border="0" class="DataTable">
<tr>
<td class="TableItem">
Mesaj Yazan :
<ASP:Label ID="FrmAdi" Runat="server"></ASP:Label>
<br />
Yeni mesaj : (Maksimum 255 Karakter )
<br />
<ASP:TextBox id="frmPost" runat="server" TextMode="MultiLine" MaxLength="255" Columns="40" Rows="5"></ASP:TextBox>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" align="right">
<ASP:Button onClick="DoAddPost" Text="Ekle" Runat="server" id="Button1" CssClass="button"></ASP:Button>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br />
<a href="Konular.aspx">Konulara Geri Dön</a>
<br />
</div>
<div id="outError" runat="server">
<ASP:DataGrid EnableViewState="False" DataKeyField="MesajID" id="DataGrid1" runat="server" AutoGenerateColumns="False" HeaderStyle-CssClass="TableHeader" AlternatingItemStyle-CssClass="AltTableItem" ItemStyle-CssClass="TableItem" CellPadding="4" ForeColor="#333333" GridLines="None">
<HeaderStyle BackColor="#507CD1" font-Bold="True" ForeColor="White"></HeaderStyle>
<PagerStyle NextPageText="Next &gt;" PrevPageText="< Prev" BackColor="#2461BF" ForeColor="White"

HorizontalAlign="Center"></PagerStyle>
<AlternatingItemStyle BackColor="White"></AlternatingItemStyle>
<ItemStyle BackColor="#EFF3FB"></ItemStyle>
<Columns>
<ASP:TemplateColumn HeaderText="Yazar">
<ItemTemplate>
<ASP:Label Runat='server' ID="lblAdminLink">
<%# DataBinder.Eval(Container.DataItem, "MesajiYaratan") %>
<% if (Session["admin"] == "yes")
{ %>
<br>
<a href="KayitSilme.aspx?S=<%# Request.QueryString["S"] %>&TID=<%# Request.QueryString["ID"] %>&T=P&ID=<%# DataBinder.Eval(Container.DataItem, "MesajID") %>">
Sil</a>
<% }
%>
<br>
</ASP:Label>
</ItemTemplate>
</ASP:TemplateColumn>
<ASP:BoundColumn DataField="Mesaj" HeaderText="Mesaj"></ASP:BoundColumn>
<ASP:BoundColumn DataField="MesajTarihi" HeaderText="Yazıldıgı Tarih"></ASP:BoundColumn>
</Columns>
<FooterStyle BackColor="#507CD1" font-Bold="True" ForeColor="White" />
<EditItemStyle BackColor="#2461BF" />
<SelectedItemStyle BackColor="#D1DDF1" font-Bold="True" ForeColor="#333333" />
</ASP:DataGrid>
</div>
</form>
</body>
</HTML>
Mesajlar.aspx.cs ye aşağıdaki kodu yazıyoruz.

Kod:
using System;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Collections;
using System.web;
using System.web.Security;
using System.web.UI;
using System.web.UI.WebControls;
using System.web.UI.WebControls.WebParts;
using System.web.UI.HtmlControls;

public partial class Mesajlar : System.web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
if (Session["KullaniciAdi"] == null)
{
Response.Redirect("default.aspx");
}
FrmAdi.Text = "<b>" + Session["KullaniciAdi"].ToString() + "</b>";
ListMesajlar();
}
private void ListMesajlar()
{
string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + server.MapPath(".\\db\\forum.mdb");
string strSelect = "SELECT * ";
strSelect += "FROM Mesajlar ";

strSelect += "WHERE KonuID=" + Request.QueryString["ID"] + " ";

strSelect += "ORDER BY MesajTarihi DESC;";
try
{
OleDbConnection objConnect = new OleDbConnection(strConnect);
objConnect.Open();
OleDbCommand objCommand = new OleDbCommand(strSelect, objConnect);
OleDbDataReader objDataReader;
objDataReader = objCommand.ExecuteReader();
DataGrid1.DataSource = objDataReader;
DataGrid1.DataBind();
if (DataGrid1.Items.Count == 0)
{
outError.InnerHtml = "Henüz Mesaj Yazılmamış..";
}

KonuBasligi.InnerHtml = "<h4>" + Request.QueryString["S"] + "</h4>";
objDataReader.Close();
objConnect.Close();
}
catch (Exception objError)
{
outError.InnerHtml = "<b>* Veritabanına baglantı hatası</b>.<br />" + objError.Message + "<br />" + objError.InnerException + "<P>" + objError.Source + "<P>" + objError.StackTrace + "<P>" + strSelect;
return;
}
}
public string AdminVisible()
{
if (Session["admin"] == "yes")
{
return " Visible=true";
}
else
{
return "";
}
}
public void DoAddPost(object sender, System.EventArgs e)
{
string strConnect = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + server.MapPath(".\\db\\forum.mdb");
string strInsert = "INSERT INTO Mesajlar (Mesaj, MesajiYaratan, KonuID) VALUES ('" + frmPost.Text + "', '" + Session["KullaniciAdi"].ToString() + "', " + Request.QueryString["ID"] + " )"; try
{
OleDbConnection objConnect = new OleDbConnection(strConnect);
objConnect.Open();
OleDbCommand objCommand = new OleDbCommand(strInsert, objConnect);
objCommand.ExecuteNonQuery();
objConnect.Close();
Response.Redirect("Mesajlar.aspx?ID=" + Request.QueryString["ID"] + "&S=" + Request.QueryString["S"], true);

}

catch (Exception objError)
{
outError.InnerHtml = "<b>* Veritabanına baglantı hatası</b>.<br />"
+ objError.Message + "<br />" + objError.Source;
return;
}
}
}

En son olarak ta db klasörünün içine bu access dosyanı kopyalıyoruz..

Güvenlik ayarlarına girilmemiştir çünkü eğitim amaçlı yazılmıştır..

Umarım Yardımcı Olabilmişimdir..
Ekli Dosyalar (Kullanmadan önce virüs taramasından geçiriniz)
Dosya Uzantısı: rar forum.rar (8.5 KB, 41 defa görüntülendi)
__________________
Hayattan Zevk, Yaptığı işten Şevk almıyor...
Üç, Beş kişinin yaptıgı işi, Bir kişi alıp çalıyorsa o sektör ölü demektir.
FikretAkın şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 21.02.2007   #2 (permalink)
Sitebuilder
 
Sitebuilder's Avatar
 
Üyelik Tarihi: 18.03.2002
Yer: izmir
Yaş: 26
Mesaj: 133
Re: Basit Bir Forum (ASP.NET + Access)

Güzel bir kaynak olmuş, uğraşıp bizimle paylaştığın için teşekkürederim.
Sitebuilder şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 21.02.2007   #3 (permalink)
Janberka
 
Janberka's Avatar
 
Üyelik Tarihi: 19.10.2006
Yer: Mersin
Mesaj: 49
Görsel: 1
Re: Basit Bir Forum (ASP.NET + Access)

Çok güzel tebrikler. Fakat bence bu bir makale değil. Neden; açıklama yok sadece kod verilmiş. Tüm sayfada yazılanların altta ki .zip dosyasından farkı nedir?

Açıklamalar
Alıntı:
Şimdi ise kullanıcının foruma konu eklemesi için KonuEkle.aspx i yaratalım
şeklinde ki bunu da KonuEkle.aspx olarak yazsanız yine anlaşılır...

Umarım eleştirilerimi olumlu yönde algılarsınız.
__________________
Kişisel bir şey
Janberka şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 22.02.2007   #4 (permalink)
FikretAkın
 
FikretAkın's Avatar
 
Üyelik Tarihi: 05.01.2006
Yer: İstanbul
Yaş: 22
Mesaj: 290
Re: Basit Bir Forum (ASP.NET + Access)

Alıntı:
Janberka tarafından gönderilen mesaj: Mesajı Görüntüle
Çok güzel tebrikler. Fakat bence bu bir makale değil. Neden; açıklama yok sadece kod verilmiş. Tüm sayfada yazılanların altta ki .zip dosyasından farkı nedir?

Açıklamalar şeklinde ki bunu da KonuEkle.aspx olarak yazsanız yine anlaşılır...

Umarım eleştirilerimi olumlu yönde algılarsınız.
@Sitebuilder, @Janberka teşekkürler eleştiri ve yorumlarınız için.
Özellikle "Kodlarla ilgili gerekli açıklamalar yanlarına yazılmıştır" diye yazdım. Çünkü her fonksiyonu tek tek açıklamaya kalkışsam en az 4-6 sayfalık bir yazı ortaya çıkacak böylece okuyucu ya programlama dersi vermiş olacagım.
Düşündüm ki okuyucuya en kısa yoldan olayın mantıgını ve oluşum sürecini anlatmak' tı..
__________________
Hayattan Zevk, Yaptığı işten Şevk almıyor...
Üç, Beş kişinin yaptıgı işi, Bir kişi alıp çalıyorsa o sektör ölü demektir.
FikretAkın şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 22.02.2007   #5 (permalink)
Janberka
 
Janberka's Avatar
 
Üyelik Tarihi: 19.10.2006
Yer: Mersin
Mesaj: 49
Görsel: 1
Re: Basit Bir Forum (ASP.NET + Access)

Doğru aslında büyük bir uygulamanın (forum sonuçta) makale olarak anlatılması olsa olsa bu kadar olur. Ama yine de sanırım biraz daha anlatmak gerekiyor bazı şeyleri.

Tebrik ederim. Yazılarınıza devam etmeniz dileğiyle...
__________________
Kişisel bir şey
Janberka şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 23.02.2007   #6 (permalink)
arsende
 
arsende's Avatar
 
Üyelik Tarihi: 05.11.2005
Yer: Istanbul
Yaş: 28
Mesaj: 486
Re: Basit Bir Forum (ASP.NET + Access)

Gerçekten çok güzel olmuş; tebrikler.

Devamını düşünüyorsanız, Namespace' leri ve kullanımlarını seçmenizi tavsiye/rica ederim.. ufak örneklerle birlikte.. Örn : "System.Globalization" , "HtmlControls" vb...
arsende şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 02.03.2007   #7 (permalink)
kuzenn
 
Üyelik Tarihi: 17.11.2006
Yer: SAKARYA
Mesaj: 4
Re: Basit Bir Forum (ASP.NET + Access)

PAYLAŞIM için teşekkürler.

Peki şu veritabanının türkçe halini niye vermediniz Örneğin kodlarda KonuBasligi veritabanında TopicSubject

Hal böyle olunca bi scripti editleyip koymuşsunuz buraya diye düşünüyorum.

Başarılar.
kuzenn şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 08.05.2007   #8 (permalink)
sercanstein
 
sercanstein's Avatar
 
Üyelik Tarihi: 19.04.2007
Yer: Edirne
Mesaj: 12
Re: Basit Bir Forum (ASP.NET + Access)

sağol güzel bi döküman bir çok kişinin işine yarayacaktır zamanım olursa izninle biraz daha birşeyler ekleyip daha faydalı hale getirmek isterim
sercanstein şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Yanıt

Etiketler
access , aspnet , forum , basit



 
Zoque'a hoşgeldiniz!
Zoque 27.02.1999 tarihinde yayın hayatına başlamış, paylaşıma dayalı bir oluşumdur. Tasarım, teknoloji, web, kültür ve sanat ana başlıkları altında bilgi paylaşımı ve benzer değerlere sahip katılımcıların birbirleriyle iletişime girmelerine imkan sağlar. "Az ama Öz" sloganından yola çıkarak, kaliteli ve nitelikli katılımı temel alır.

Saygın ve ciddi bir ortamda yardımlaşmak, haberleşmek, kendi bildiklerini diğer katılımcılarla paylaşmak isteyen, oluşumumuza düzenli katılımda bulunacağı inancını taşıyan konuklarımızı üye olmaya davet ediyoruz. [ » ]


Üye Girişi: