Kullanıcı Paneli / Aktif Kullanıcı 67 Kişi
Kullanıcı adı:   Şifreniz:  
Anasayfa              Forumlar             Programlar                Makale             Videolar             Güvenlik Programları
Konu
| PHP De Örnek Dosya İşlemi | Forumlar - Sınırsız Bilgi Paylaşım Platformu |
Haberler              Scriptler             Temalar                Servisler                Üye ol                Giriş Yap                 İstatislikler                Konuk Defteri                Arama
Forumlar / Webmaster / Webmaster Genel / PHP De Örnek Dosya İşlemi
 

Etiket ( Tag ) : PHP De Örnek Dosya İşlemi

Profil Tarih : 2008-09-15 12:09 GMT
Kaan
Online Durumu
Yeni Üyemiz

Şehir:
Yaş: 106
Mesaj: 27
Ülke:
Meslek:
Yaş: 106
Pagerank :

Bir Dosya İşlemi Örneği: Konuk Defteri

Böylece PHP ile "iş yapmak" için gerekli araçlarımıza bir yenisini ekledik. Artık PHP programlarımızdan sabit diskteki dosyalara ulaşmayı ve dosyalarla çalışmayı biliyoruz. Buraya kadar öğrendiklerimizi bir PHP programı üzerinde uygulayabiliriz. Bunun için birlikte bir konuk defteri yapalım.

Diyelim ki konuk defterimize sadeceziyaretçimizin adını, elektronik posta adresini ve kısa bir mesajını isteyeceğiz. Öyle bir sayfa yapalım ki; ziyaretçi bu sayfayı ilk kez açtığında, yani henüz Form'dan sunucuya bir veri gelmemiş dolayısıyla $HTTP_POST_VARS dizi değişkenin içinde değer bulunmadığı sırada, programımız bu durumu belirleyerek ziyaretçiye konuk defteri Form'nu sunmalı; ziyaretçi formu doldurup gönder düğmesini tıkladığı zaman programımız bir yandan ziyaretçinin gönderdiği bilgileri kendisine gösterir ve teşekkürlerimizi aktarırken, diğer yandan da bu bilgileri bir düzyazı programı girmeli. Bu sırada ziyaretçimize isterse defterimizdeki diğer mesajları okuma imkanı da sunabilmeliyiz. Biraz uzunca olan şu programı kd_01.php adıyla kaydedelim. (Bu dosyayı, kitapçığın örnek kodlar arasında bulabilirsiniz; fakat bu alıştırmayı bir düz yazı programı ile buradaki örnek ifadeler ve alan/değişken adlarını değiştirerek tekrar etmeniz yerine olur:


Kod:
<?php

if ( isset ( $HTTP_POST_VARS )) {

// Form dolduruldmuş ise

echo ("

<HTML>

<HEAD>

<TITLE>PHP de Misafir Defteri</TITLE>

<meta http-equiv=content-typ content="text/html; charset=ISO-8859-9>

</HEAD>

<BODY>

<P><font size='3' class='s4' face='Arial, Helvetica'>

");



Programımızın buraya kadar olan bölümü, if ile $HTTP_POST_VARS dizi değişkeninde değer bulunup bulunmadığına ilişkin sınamanın olumlu sonuç vermesi halinde uygulanan bölümüne dahil. Burada dikkatini echo() fonksiyonu ile birden fazla satır yazdırdığımız çekmiş olmalı. echo(), fonksiyonuna Browser penceresine göndereceğimiz değerleri çift-tırnak içinde yazacağımız için, HTML etiketlerinin çift-tırnak gerektiren etiketlerinde tek tırnak kullandığımıza dikkat edin. if sınavının olumlu sonucuna ilişkin bölümü yazmaya devam edelim:


Kod:
$dosya_adi = "mesajlar.txt";

if (file_exists("$dosya_adi")) {

$yazilacak_dosya = fopen($dosya_adi,'a');

}

else {

$yazilacak_dosya = fopen($dosya_adi,'w');

}

foreach ($HTTP_POST_VARS as $anahtar=>$deger ) {

$yeni_anahtar = strtoupper($anahtar);

print ("$yeni_anahtar: $deger<br>");

$metin = "$yeni_anahtar: $deger<br>";

fputs($yazilacak_dosya, $metin);

}

fputs($yazilacak_dosya, date("D d M Y h:i:s"));

fputs($yazilacak_dosya, "<br>n");

fputs($yazilacak_dosya, "<center>

<img src='nokta.gif' width=100% height=1 border=0></center>n");

fclose($yazilacak_dosya);


Konuk defteri programımızHTML için gerekli temel etiketleri ürettikten sonra bu bölümde veritabanı dosyası olarak kullandığımız mesajlar.txt isimli dosyanın bulunup bulunmadığını sınıyor; dosya varsa ek yapmak için ('a'),dosya yoksa yazmak için ('w'), dosyayı açıyoruz. Sonra, $HTTP_POST_VARS dizi-değişkenine Form'dan gelmiş olan anahtar=değer çiftlerinin her birini (yani, Browser'dan gelen örneğin "adi" değişkeni ve bunun değeri olan ismi) önce print() ile ziyaretçinin Browser'ına, sonra da fputs() ile biraz önce açtığımız veritabanı dosyasına yazdırıyoruz. Fakat burada bundan önce Form'dan küçük harf olarak gelen değişken adlarını (anahtarları) strtoupper() fonksiyonu ile büyük harfe çeviriyoruz.Şimdilik bu fonksiyonun üzerinde durmayın; biraz sonra metin düzenleme ve düzenli ifadeler konusuna geleceğiz. Ancak bu sırada ziyaretçilerin mesajlarını daha sonra güzel görüntelemek için aralarına çizgi olarak kullanmak üzere bir resim dosyasını IMG etiketi ile yerleştirdiğimize de dikkat edin. Bu grafik dısyasının eni-boyu 1 piksel olduğu halde burada ziyaretçinin Browser penceresinin eni kadar genişleterek çizgi üretmiş oluyoruz! Evet, koda devam:


Kod:
echo ("

<HTML>

<HEAD>

<TITLE>PHP de Misafir defteri</TITLE>

<meta http-equiv=content-type content=text/html; charset=ISO-8859-9>


</HEAD>

<BODY>

<P><font size=3 class=s4 face=Arial, Helvetica>

<center><img src=nokta.gif width=100% height=1 border=0></center>

Sayın: $adi<br>

Defterimi imzaladığınız için teşekkür ederim</P>

<p>Ana Sayfaya Dönmek için <A HREF="index.htm"> tıklayın</A><BR>

Mesajları okumak için<A HREF="mesajlar.php"> tıklayın</A>

</BODY>

</HTML>

");

}


Programımızın bu bölümünde, ziyaretçiye teşekkür ediyoruz; ve isterse diğer mesajları okumak üzere tıkllayacağı köprüyü sağlıyoruz. Mesajların çok uzaması halinde bu köprüyü bir sayfanın üstünde, bir de altında vermekte yarar var. Şimdi, programımızın Form doldurulduktan sonra işleyen bölümünü yazmış olduk. Taa en başta yaptığımız $HTTP_POST_VARS dizi-değişkeninin değer içerip içermediğine ilişkin sınamanın olumsuz olması halinde, prıogramımız, işe buradan başlayacaktır:


Kod:
else {

echo ("

<HTML>

<HEAD>

<TITLE>PHP de Formlar</TITLE>

<meta http-equiv=content-type content=text/html; charset=ISO-8859-9>

</HEAD>

<BODY>

<FORM ACTION="$PHP_SELF" METHOD="POST">

<P><font size=3 face=verdana, Arial, Helvetica>

Defteri imzalamadan okumak için <a href='mesajlar.php'>

burayı tıklayın</a></FONT></P>

<P><font size=3 face=Arial, Helvetica>

Adınız, Soyadınız: <br><INPUT TYPE="TEXT" NAME="adi"><BR>

Elektronik Adresiniz: <br><INPUT TYPE="TEXT" NAME="adres"><BR>

Mesajınız:<BR>

<TEXTAREA NAME="mesaj" ROWS=10 COLS=30 WRAP=virtual></TEXTAREA>

<BR><BR><BR>

<INPUT TYPE="SUBMIT" VALUE="Defteri imzala!">

<INPUT TYPE="RESET" VALUE="Tümünü sil!">

</FORM>

</BODY>

</HTML>

");

}

?>


Bu bölümde çift-tırnak işaretlerini değiştirmek yerine, bunları ESC karakteri ile özel işaret değil, metin olarak ele alınacak hale getirdik. Programımız burada yine echo() ile düz ve basit bir HTML Formu oluşturuyor. Programın akış planını anlamış olmalısınız: ziyaretçi önce Form'u dolduracak ve gönder düğmesini tıklayacak.

Bu ACTION, Form'da INPUT alanlarındaki değerleri POST yöntemiyle yine kendisine gönderecek; böylece PHP, programı yeniden çalıştırırken, bu kez en baştaki şartın yerine geldiğini (yani $HTTP_POST_VARS dizi-değişkeninin değer içerip içermediğine ilişkin sınamanın olumlu sonuç verdiğini) görerek, işe baştan baştan başlayacaktır. Bu, INPUT etiketinin alanlarından oluşturulan değişkenlerden yararlanarak, ziyaretçiye bize ulaştırdığı bilgileri ve bizim teşekkür mesajımızı yollamaktan ibarettir.

Program bu şekliyle ne güvenlik önlemlerine sahip, yani kötüniyetli kişilerin INPUT alanlarına kötü niyetli kodlar yazmaları halinde bunları ayıklıyor; ne de ziyaretçinin boş Form gönderip göndermediğini sınıyor. Bu gibi işleri, PHP ile metin düzenlemeyi öğrendikten ve Düzenli İfadeler denen kavramı ile tanıştıktan sonra yapacağız.

 


Anahtar Kelimeler Konuya Cevap Yazanlar
/ PHP De Örnek Dosya İşlemi /indir / dowland / download / .rar / .zip / .exe / serisi / msn eklentisi / kodları / resimleri / haberleri / videosu / programları / oyunları / hikayeleri / sitesi / adresi / msni / yazılım / donanım / tasarım /
BENZER KONULAR
KonuKonuyu Baslatan
phpbb3 Hazır Forum Sistemizeus
php Eğitim seti...Panter
localhostta Asp ve Php Çalıştırma(Vİdeo)Panter
php ile mysql baglantısı videolu anlatım yeniExec
PHP Report Maker v2.0.0.7 indir , downloadExec

Keywords

Host, Domain, Reseller, Deneme Hosting, Sponsor Hosting,Program, Türkçe Arşiv, Yeniler, En Yeniler, Sitemap, Site Haritası,Servisler, Destek, Siteye Destek olun, TeknoPaylasim.NET,Güvenlik, Web sitesi Güvenliği Koruma, Kalkan, Anti Koruma, İnternet Güvenliği, Mail Güvenliği, Hotmail, Gmail, Mynet, Passport, Yahoo, Bilgisayar Güvenliği, Pc Güvenliği, Yazılımlar, Script Genel, Portal, Script, Tema Template, Grafik, Flash, Photoshop, Animasyon, Autocard, Asp Script, Asp Portal, Asp Tema, Asp Template, Php Script, Php Tema, Php, Skins, Yerel Haberler, Güncel Haberler, Yeni Haberler, Siyaset, Medya, Ekonomi, Borsa, Film İndir, Güncel Filmler, Yeni Filmler, Vizyon Filmler, Komedi, Macera, Aksiyon, Dizi İndir, Yeni Diziler, Haftalık Diziler, Aylık Diziler, Dizi İzle, Yabancı Mp3, Türkçe Mp3, Arabesk Mp3, Karışık Mp3, Yabancı Klip, Türkçe Klip, Arabesk Klip, Yeni Mp3, 2008 Mp3, 2009 mp3, Oyunlar, oyun indir, Yeni Oyunlar, Güncel Oyunlar, 2008 oyunlar, 2009 oyunlar, counter-strike, knight-online, online oyunlar, Türkçe, Yabancı Video Klip indir Video Clip, İlginç olaylar, konular, İlginç Görüntüler, Duvar Kağıtları, Manzaralar, Bilgisayar Resimleri, Biyografi, Sağlık, Bizim Memleket,  Evcil Hayvanlar, Kedi, Köpek, Kuş, Balık, Online Oyunlar, Komik Görüntüler, Fıkralar, Komik Olaylar, Muhabbet, Geyik, Msn, Icq, Yahoo, Gmail, hotmail, Donanım, İletişim Sistemleri, Bilim Teknoloji, Atatürk Köşesi, Atatürk'ün Hikayesi, Gençliğe Hitabesi, Ödevler, Tezler, ve Kaynaklar, e-bok, elektronik kitap, Sinema, Fener Bahçe, Galatasaray, Beşiktaş, Dünyadan Futbol, Videolu eğitim, Kurulumsuz Programlar, Araçlar, Güvenlik programları anti wirüs, resim grafik programları, hazır kodlar php asp html, masaüstü Programları, oyunlar, ses video programları, web araçları, internet programları, iş ofis programları, cep telefonu programları mobil, Linux, Mac, Çeşitli programlar, Scriptler, Phbb3 Temaları, Vbulletin board Temaları, Seditio Temaları Eklentileri Plugins, Wordpress temaları, Smf Forum temaları, Joomla Temaları  
                                                                         Tp | RSS Feeds - İletişim - Arşiv - Kullanım sözleşmesi - Yukarı git

Powered by Seditio Version v125
Paylaşılmayan Bilgi Yeni Boyutlar Kazanmaz
Sayfa açılma süresi 0.254 sn.
Toplam Sayfa Gösterimi: 318813 - Bugün: 261
Forum Arşiv
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119]