#kommentartext { background-image:url(https://img.webme.com/pic/h/hackerfriend/commentt.jpg); } #gbooktext { background-image:url(https://img.webme.com/pic/h/hackerfriend/gbook.jpg); }, //-->


Bilisimin Merkezi

659

  1. Merhaba arkadaşlar,

Script kodlarken izlenmesi gereken yolları anlatacağım. Bunlar kesin kurallar değildir tabi ama ben böyle yapılmasında fayda görüyorum. Başlayalım.

En başta iyice bir düşünüyoruz scriptimizi, nerede ne olacak nasıl olacak karar veriyoruz, karar vermeden başlamıyoruz. Ardından scriptimizde kullanacağımız veritabanını oluşturuyoruz. Kaç tablo var ne kadar veri tutacak hepsini ayarlıyoruz. Sonra da oluşturduğumuz tüm tablolara scripti kurarken bize yardımcı olması için bir kaç örnek veri girişi yapıyoruz. Buraya kadar olan işlemleri phpmyadmin aracılığıyla yapmanızı öneririm. Veritabanımız tamam olduğunda, yavaş yavaş scriptimizi inşa etmeye başlayabiliriz.

İlk önce scriptte sık sık kullanacağımız işlemleri fonksiyon haline getirip bir dosya altında topluyoruz. Bu bizim hızımızı 2 katına çıkaracaktır. Bu fonksiyon dosyamızda neler olabilir, mesela her dosyamızın başında yapacağımız veritabanı bağlantısını bir fonksiyon haline getirip işlemlerimizi kolaylaştırabiliriz. Ve bunun gibi bir çok fonksiyon. Fonksiyon dosyamız : fonksiyonlar.php olsun.
Bu adımdan sonra tasarımımız hazırsa alıyoruz, ya da hazır değilse hazırlıyoruz. Daha sonra hersayfada sabit bulunan kısımlarını parçalıyoruz. Böylelikle tek bir dosyada yapacağımız değişiklik tüm sayfalarımızı etkileyecektir. Diyelimki tasarımı böyle parçaladık ; header.php - yan.php - footer.php

Daha sonra tek tek sayfalarımızı oluşturuyoruz.

Öncelikle index.php >>

Bazı dosyaları içeri çekmemiz yani include fonksiyonuyla sayfaya dahil etmemiz gerekmektedir. Bir fonksiyon dosyası yapmıştık bunu bu sayfada kullanmak için dosyayı index.php dosyası içerisinde include etmemiz gerekmektedir. bunun için sayfamızın başına

?>?> kodunu ekliyoruz. Devamında veritabanına bağlanma fonksiyonlarımızı çalıştırıyoruz. Sayfa başında yapmamız gereken işlemler bittikten sonra tasarımımızın en üst parçasını include edebilirsiniz. header.php , onu da yukarda gösterdiğim şekilde include ediyoruz. Ardından sayfa gövdesine gelmiş bulunuyoruz. Genellikle burada bazı listelemeler yapılır; son 5 fıkra, rasgele 8 oyun, en popüler 10 şarkı gibisinden.. Bunlar için hep aynı fonksiyonu kullanacağız zaten. Hep işimizi fonksiyonla yaptığımız için inanın fonksiyonda kullandığımız kodları bile unutacaksınız. index.php gövdesindeki gerekli yerlerde veritabanından çekme işlemini tam yaptıysak. Sayfanın tasarımsal yapısındaki yan.php ve footer.php’yi ilk yaptığımız tasarıma bakarak gerekli yerlerde include yapıyoruz. index.php dosyamız bitmiş oluyor.oku.php [örnek] >>

index.php’nin kodlarını olduğu gibi kopyalayın arkadaşlar. Ardından gözde kısmında sadece indexte gözükecek kızımları dikkatlice silin. Ama dikkat edin herhangi bir div tagını yalnış yerden silmeniz durumunda tasarımınız yeni sayfanızda bozuk olacaktır. Bu işlemi doğru bir şekilde yaptıktan sonra, eğer sayfaya get ya da post yöntemi ile bir değer aktarılıyorsa bunları sayfa başında $_get ve $_post yöntemleri ile bir değişkene aktarıyoruz. Mesela;
$isim = $_get[isim];
$postlagelenhikaye = $_post[hikaye];
gibi..
Daha sonra gövdede oluşturduğumuz boşlukta gerekli sorgulamaları yaptırarak dosyamızın işlevini yerine getirmesini sağlıyoruz. Mesela bir okuma sayfası yapıyorsak, yazımızı veritabanından çekeceğimiz id’yi ya da numarayı get metodu ile alıp bu değerle veritabanımızdan $deger numaralı yazıyı göster gibisinden bir sorguyla yazımızı gösteriyoruz.

Ziyaretçi için yaptığımız sayfalar bitti şimdi sıra geldi yönetim paneli yapmaya. Panel yapımı günvenlik gerektiren bir iştir, bundan dolayıdır ki biraz daha kompleks bir yapıya sahiptir. Örnek dosyalarımız;

admin.php : panelin gözükeceği ve işlemlerimizin yapılacağı dosya.
kontrol.php : şifremizi kontrol edip bizi yönlendirecek dosya.
login.php : girişimizi gerçekleştirecek dosya.
logout.php : çıkışımızı sağlayacak ve cookie’leri silecek dosya.
icerikekle.php : içeriğimizi veritabanımıza kaydedecek dosya.

ilk önce şunu söyliyeyim cookie kullanarak şifreleme yapacağız. Mantık şudur; xyz cookie’si mevcutsa şunu yap yoksa bunu yap gibi bir talimat veriyoruz dosyalarımızda. Yani cookie canlıysa işlemi yap ama canlı değilse login.php’ye yönlendir.

admin.php; cookie denetimimizi sayfanın en başında yapıyoruz.

if (isset($_REQUEST[”kullanici”])) {

sayfa içeriğimiz - şifreli içerik yani.

} else {
header (”Location: login.php”);
}

Şifreli içerik yazan yerde php’ye ait birşey yok. Sadece bir form oluşturacağız. formun action seçeneğine icerikekle.php dosyasının adını yazıyoruzki verilerimizi veritabanına ekleyecek dosyaya ulaştıralım. form tagları aasında action=”icerikekle.php” ve method=”post” olmalıdır, zira büyük yazıları taşımak için post metodu önerilmektedir. form içinde bulunan metin alanlarını adlarını da unutmayacak şekilde ayarlayınız. Zira bunlar bizim değişkenlerimiz olacak ve bir diğer dosyamızda post metoduyla alıp kullanacağız bu verileri.

login.php; Normal bir html sayfası yapar gibi bir kullanıcı adı bölümü bir de şifre bölümü olan bir form oluşturuyoruz. action seçeneğinde kontrol.php yazıyor olmalı. Zira bu dosyamız yolladığımız şifre ve kullanıcı adını alıcak ve bize ona göre muamelede bulunucaktır. Burada formu oluştururken, yine yukarda anlattığım şekilde metin alanlarının adlarına dikkat etmeliyiz.

kontrol.php; buradaki mantık şu, veritabanından bak yollanan şifre ile kullanıcı adı 0. tabloda bulunuyorsa(yani bulunmuyorsa) login.php’ye yönlendir tekrar ama 0′dan başka bir sıradaysa(yani bulunuyorsa) cookie’yi oluştur ve hemen ardında admin.php’ye yönlendir.
işte o işlemi gerçekleştiren kodlarımız biraz bakarsanız anlayacaksınız eminim;

$sql = “select * from admin where kullanici=’”.$_POST[”kullanici”].”‘ and sifre=’”.$_POST[”sifre”].”‘ “;
$kontrol = mysql_query($sql);
$kayitsayisi = mysql_num_rows($kontrol);
if( $kayitsayisi == “0″) {
header (”Location: login.php?hata=yes”);
} else { $kontrol_ok = mysql_fetch_array($kontrol);
setcookie (”kullanici”, “$kontrol_ok[kullanici]”);
header (”Location: admin.php”);
} cikis.php; aslında cookie silme diye bir olay yoktur.bir cookie’nin geçerli olabileceği bir süre vardır. O süreden sonra zaman aşımına uğrar. Bizler de bu dosyamızda cookie’mizin zamanını bitirerek ölmesini sağlıyoruz. Böylelikle sisteme bir daha girebilmek için yeni bir cookie başlatmamız gerekiyor.

setcookie (”kullanici”, “”, time() - 360000);
header (”Location: login.php”);

ilk satırda cookie süremiz bitiriliyor ve 2. satırda tekrar login.php sayfasına yönlendiriliyoruz.

icerikekle.php; başında yine aynı şekilde cookie sorgumuzu yapıyoruz. post metoduyla verilerimizi değişkenlerimize aktarıyoruz ve bunları ekleyecek sorgularımızı gerçekleştiriyoruz. verileri eklerken mysql komutlarını kullanıyoruz. eklemek için kullandığımız komut “insert into”dur. Türkçe meali içine koy demektir, yani bir tablomuz hazır tüm değerleri depoluyacak yerleri mevcut; biz de buna veri girişi yapıyoruz.

Şimdilik mantığı anlattım, yakında canlı bir örnek ile geleceğim. bu konunun altında yazmaya başladım ama çok yoruldum kopyaladım devam edip tamamlayınca yazacağım.

Evet olay böyle yani.. bence böyle..

Teşekkür ederim.
(Alıntıdır)


Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol