Aşağıda haber_ekle.asp dosyasının içeriği verilmiştir
CODE
<% @ Language="VBScript" codepage=1254 %>
<% Option Explicit %>
<html>
<head>
<title>ASP ile Güncel Haber Ekleme</title>
</head>
<body>
<form action="haber_isle.asp" method="get">
<b>Haber Başlığı : </b><input ******"textbox" name="haber_basligi"><br>
<br><b>Haber : </b><br><textarea rows="10" cols="50" name="haber"></textarea><br><br>
<input ******"submit" value="Gönder">
</form>
</body>
</html>
Bu dosyamızda sadece formumuzu oluşturuyoruz ve formumuzu işleyecek sayfanın adresini belirtiyoruz.Dolayısıyla daha fazla açıklama yapmamıza gerek yok.
Aşağıda haber_isle.asp dosyasının içeriği verilmiştir.
CODE
<% @ Language="VBScript" codepage=1254 %>
<% Option Explicit %>
<html>
<head>
<title>ASP ile Güncel Haber Ekleme</title>
</head>
<body>
<% ' Değişkenlerimizi tanımlıyoruz.
dim tarih
haber_basligi
haber
fso
text_dosyasi
text_ge
tfile
' Değişkenlerimize haber_ekle.asp deki formlara girilen bilgilerin değerlerini kaydediyoruz.
tarih=date()
haber_basligi=Request.QueryString("haber_basligi")
haber=Request.QueryString("haber")
' Formlardan aldığımız değerlerin boş olup olmadığını kontrol ediyoruz.Doldurulmamış olan form öğeleri varsa
' bir önceki sayfaya geri dönerek doldurulmamış formların doldurulması söyleniyor.Eğer herşey tam olarak doldurulmuş ise kodlara devam ediliyor.
if haber_basligi="" then
Response.Write "Lütfen haber başlığı <a href=haber_ekle.asp>giriniz</a> !"
else
if haber="" then
Response.Write "Lütfen haber <a href=haber_ekle.asp>giriniz !"
else
' FileSystemObject 'i oluşturuyoruz ve onu fso değişkenine atıyoruz.
set fso=Server.CreateObject("Scripting.FileSystemObjec t")
' Eğer "C:\" de haberler.txt diye bir dosya yok ise böyle bir text dosyası oluşturuyoruz.Yoksa kodlara devam ediliyor.
if fso.FileExists("C:\haberler.txt") = False then
set text_dosyasi=fso.CreateTextFile("C:\haberler.txt")
' Daha sonra text dosyasına başka şekilde izinler verip açacağımız için dosyayı kapıyoruz.
text_dosyasi.close
set text_dosyasi=nothing
else
end if
' Text dosyamızı "File Nesnesi" için açıp bunu text_getfile değişkenine atıyoruz.
set text_getfile=fso.getfile("C:\haberler.txt")
' İşte şimdi esas yapacağımız işe
can alıcı noktaya geldi sıra.Datediff() fonksiyonu yardımıyla dosyamızın en son değiştiriliş tarihi ile bugünkü tarihi karşılaştırıyoruz.Değer sıfıra eşitse yani dosyamız en son olarak bugün güncellenmişse 8 (ekleme.) iznini vererek açıyoruz.Eğer sıfıra eşit değilse yani güncel değilse 2(yazma.) iznini vererek açıyoruz.
if datediff("d"
text_getfile.DateLastModified
tarih) = 0 then
set text_dosyasi=fso.OpenTextFile("C:\haberler.txt"
8
0)
else
set text_dosyasi=fso.OpenTextFile("C:\haberler.txt"
2
0)
end if
' Tüm bu yorucu kontrollerden sonra formlardan aldığımız değişkenleri text dosyamıza nacizane bir tasarım ile ekliyoruz.
text_dosyasi.Writeline "<b>"
text_dosyasi.Writeline haber_basligi&"</b><br><br>"
text_dosyasi.Writeline haber&"<br><br>"
text_dosyasi.Writeline "<b>Haber tarihi : </b>"
text_dosyasi.Writeline tarih&"<br><br><br>"
' Bundan sonra işimiz bitiyor.Yorucu kodların ardından bir iş başarmanın mutluluğuyla keyifleniyoruz
.
text_dosyasi.close
set text_dosyasi=nothing
set text_getfile=nothing
set fso=nothing
end if
end if
%>
</body>
</html>
Aşağıda haberler.asp dosyasının içeriği verilmiştir.
CODE
<% @ Language="VBScript" codepage=1254 %>
<% Option Explicit %>
<% ' Bundan sonra yazacağımız kodları ara belleğe alıyoruz.
Response.Buffer=True %>
<html>
<head>
<title>ASP ile Güncel Haber Ekleme</title>
</head>
<body>
<% dim fso
text_dosyasi
set fso=Server.CreateObject("Scripting.FileSystemObjec t")
' Dosyamızı 1(okuma.) iznini vererek açıyoruz.
set text_dosyasi=fso.OpenTextFile("C:\haberler.txt"
1
0)
' While döngüsü ile text_dosyasi text_dosyasi.AtEndOfStream olmadığı sürece ekrana text dosyasının satırlarını yazdırıyoruz.
while not text_dosyasi.AtEndOfStream
Response.Write text_dosyasi.Readline
wend
' Ara belleğe aldığımız içeriği sayfaya gönderiyoruz.
Response.Flush
text_dosyasi.close
set text_dosyasi=nothing
set fso=nothing
%>
</body>
</html>
Alıntı