• 28-03-2008, 21:49:41
    #28
    Eposta Aktivasyonu Gerekmekte
    PHP ile dizinlerinizi kontrol ederek yeni dizinler oluşturabilir veya silebilirsiniz.Yeni bir dizin oluşturmak için mkdir() , var olan bir dizini silmek içinse rmdir() fonksiyonu kullanılır.

    mkdir() fonksiyonu içine iki tane parametre alır. mkdir(dizin adı, izin yetkisi)

    Not:Normal bir dizin izin yetkisi 700′dür.

    (Örnek)Dizin Oluştur:

    <?php
     
    $olustur = mkdir("resimler", 0700);
     
    if($olustur){
     
    echo "Dizin Oluşturuldu";
     
    }else{
     
    echo "Dizin Oluşturulamadı";
     
    }
     
    ?>
    (Örnek)Dizin Sil:
    <?php
     
    $sil = rmdir("resimler");
     
    if($sil){
     
    echo "Dizin Silindi";
     
    }else{
     
    echo "Dizin Silinemedi";
     
    }
     
    ?>
    Dizinlerin içeriğini açmak için opendir() , dosya ve dizinleri okumak içinse readdir() fonksiyonları kullanılır.Açılan bir dizinin içinde bulunan dosya ve dizinleri ekranda görüntülemek için readdir() fonksiyonunu döngü ile birlikte kullanmamız gereklidir.Ayrıca scandir() fonksiyonu ile daha kolay olarak dizi değişken şeklinde listeleme yapabilirsiniz.

    (Örnek)Dizini Aç ve İçindeki Dizin ve Dosyaları Listele:
    <?php
     
    $dizinadi = ".";
     
    $dizin = opendir($dizinadi);
     
    while(gettype($isim=readdir($dizin))!=boolean){
     
    echo "$dizinadi/$isim<br>";
     
    }
     
    closedir($dizin);
     
    ?>
  • 28-03-2008, 21:50:11
    #29
    Eposta Aktivasyonu Gerekmekte
    PHP ile dosya yaratmak için fcreate() diye bir fonksiyon yoktur.Bu yüzden hem yaratmak hem varolan bir dosyayı açmak için fopen() fonksiyonu kullanılır.Nasıl kullanılması gerektiğini belirtmek için dosyadan sonra parametre içine gerekli mod yazılır.Bizim dosya yaratmak için kullanacağımız mod w+ olduğundan diğer modlar şimdilik işimize yaramayacaktır.

    <?php
     
    //deneme.php dosyasını yarat
     
    $dosya = fopen("deneme.php", "w+");
     
    //içine yazı yaz
     
    fwrite($dosya, "Bu bir yazı");
     
    //dosyayı kapat
     
    fclose($dosya);
     
    ?>
  • 28-03-2008, 21:50:49
    #30
    Eposta Aktivasyonu Gerekmekte
    Sayfaya uygulanan en son değişikliğin zamanını öğrenmek için birçok yol olabilir.Fakat getlastmod() fonksiyonu bunu kolaylaştırıp date() fonksiyonu ile birlikte kullanmamızı sağlıyor.Böylece fazla kod ile uğraşmadan sayfanın en son ne zaman düzenlendiğini öğrenebilirsiniz.Fonksiyonun içi herhangi bir parametre almaz.
    <?php
     
    $degisiklik = getlastmod();
     
    $goster = date("d.m.Y - g:i", $degisiklik);
     
    echo "Sayfanın en son değiştirilme zamanı: ".$goster;
     
    ?>
  • 28-03-2008, 21:52:10
    #31
    Eposta Aktivasyonu Gerekmekte
    İki dizi değişkeni birleştirip tek bir dizi haline getirebilmek için array_merge() fonksiyonu kullanılır.Kullanımı gayet basittir ayrıca aynı yöntemle kullandığınız ama farklı dizilere atadığınız değişkenlerinizi birlikte kullanmak için tekrar yazmanız gerekmeden birleştirebilirsiniz.
    <?php
    $resimuzanti = array("png", "jpg", "jpeg", "bmp", "tiff", "gif", "svg");
    $dosyauzanti = array("html", "htm", "php", "txt", "phtml", "cgi");
    //iki dizi değişken içeriğini birleştirelim
    $uzantilar = array_merge($resimuzanti, $dosyauzanti);
    //birleşen dizimizi ekrana yazdıralım
    print_r($uzantilar);
    ?>
  • 28-03-2008, 21:53:19
    #32
    Eposta Aktivasyonu Gerekmekte
    PHP’de template sistemleri basit bir açıklama ile kodu içerikten yani görünümden ayırmak için kullanılır.Tek bir satırdaki değişiklik ile tüm sitenin görünümünü değiştirebilirsin.Hatta tüm sitelerin görünümünü tek bir satır ile değiştirebilir bunu tüm sitelerine uyarlayabilirsin.


    Hayal edin bir hamburger yapıyorsunuz ve hamburgerin içine köfte falan ilave edip bide ketçap mayonez ile lezzetleştiriyorsunuz.Bunu otomatik bir makine ile yaptığınızı düşünün size sadece ekmeği ve malzemeleri bir kereye mahsus makinaya koymak kalıyor.Makina kendi kendine onları hamburger haline getiriyor.Aynı şekilde template sistemleride bu örnekten farklı değildir.Bir websitesinde sayfa sayısından farklı olan tek şey içeriktir.PHP template sistemlerinin hedefi ise statik içeriği değişken içeriğe çevirerek dinamik bir görüntü kazandırmaktır.

    <?php  
     
    $sayfa = $_GET["sayfa"];  
     
    if (($sayfa == "anasayfa") or ($sayfa ==""))  
     
    { include("ana.php");  
     
    } else if($sayfa == "hakkinda")  
     
    { include("hakkinda.php");  
     
    } else if($sayfa == "iletisim")  
     
    { include("iletisim.php");  
     
    } else if($sayfa == "sss")  
     
    { include("sss.php");  
     
    } else if($sayfa == "linkler")  
     
    { include("linkler.php");  
     
    } else if($sayfa == "gizlilik")  
     
    { include("gizlilik.php");  
     
    } else { include("hata.php");  
     
    }  
     
    ?>
    Bu teknik ile statik bir index.php sayfası tanımlarsın ve sonra dinamik olarak değişken içeriğini include yöntemi ile bu statik sayfaya dahil edersin.

    Kodları analiz etmemiz gerekirse örneğin print ” Güray Süerdem “; sayfası çağırıldığı zaman hakkinda.php sayfası çağıralarak çalıştıralacak.Eğer menüde bulunmayan bir sayfa çağırıldığı zaman hata.php sayfası görünütlenecektir.

    Header & Footer (Üst ve Alt)

    İçerik ile uğraşmak size yük oluyorsa ve karmaşa ile uğraşmak istemiyorsanız statik sayfalarınızı alt,üst,menü kendinize göre bölümlere ayırabilirsiniz.Birçok gelişmiş sistemler bu şekilde çalışır.Eminimki birçok sistemde karşılaşmışsınızdır header.php footer.php veya right.php left.php vb. sayfalar karmaşayı önlemek için kullanılır.Zaten template sistemleri başlı başına bir karmaşa önleyici rolünü üstleniyorlar.Bu sayede daha verimli olmanızı sağlıyor.Bunu ilk başta belirtmiştim.
    <?php  
     
       include("header.php");  
     
    ?> 
        
       İÇERİK  
     
    <?php  
     
       include("footer.php");  
     
    ?>
    http://guraysuerdem.com/sayfa.php gibi geniş bir sistemde sayfa sürüsüyle uğraşmak can sıkıcı ve karmaşıktır.

    Burada anlattığım teorik bir bilgidir.Sadece sayfalama tekniğinin nasıl yapıldığını anlatmaya çalıştım.Basit bir template sistemi yaparak daha iyi anlatmaya çalışacağım.Piyasada birçok template sistemi bulunmaktadır fakat benimde kullandığım ve önerdiğim sistem Smarty template sistemidir.Unutmayınki verimli bir çalışma düzen ile olur.Eğer karmaşık ve düzensiz bir şekilde kod yazmaya devam ediyorsanız bundan vazgeçmenizi öneririm.Her zaman mantık ile bilgiyi birlikte kullanmanız dileğiyle.Ayrıca burada daha çok yeni başlayanlara öğretici bilgiler verdiğim için bilenlerinde yorumlara katılarak öğrenenlere bilgi paylaşımı yapmalarını tavsiye ederim.
  • 28-03-2008, 21:54:03
    #33
    Üyeliği durduruldu
    abi iki dakika nefes al bizim yazdıklarımızı oku
    acelen nereye anlamadım ki.
    patır patır kod mesajları atıyorsun

    ...
    dinleyen kim sanki ?
  • 28-03-2008, 21:55:05
    #34
    Eposta Aktivasyonu Gerekmekte
    Daha önce PHP Template Teorisi yazımda template sistemleri hakkında ufak bir teorik bilgi vermiştim.Fakat orada verdiğim örnek sayfaları ve bölümleri birbirinden ayırmaktı.Şu an size göstereceğim örnek ise tasarım ve kodlamanın ayrı dosyalarda yapılmasını sağlamak.
    Tabiki bu sadece mantığını kavramanız için çok basit birşey.Ama yinede kolaylık bakımından basit işlerinizde kullanabilirsiniz.Yaptığımız sistemde include edeceğimiz bir php dosyası birde html kodlarının yani tasarımın olacağı .tpl dosyası olacak.İlk önce kodlarımızı yazıp daha sonra tasarım dosyası olan .tpl dosyamızı oluşturalım.En son olarak anasayfamıza include edip kullanalım.
    İlk önce template.php adında kodlarımızın olduğu dosyayı oluşturuyoruz.
    <?php      
    $baslik = "Site Başlığı";      
    $mesaj = "Sitemize Hoşgeldiniz";      
    $slogan = "Hebele Hubele";      
    $kopirayt = "© Bu Site Haksızdır";      
    ob_start();      
    include("template.tpl");      
    $html = ob_get_contents();      
    ob_end_clean();      
    echo $html;      
    ?>
    Daha sonra template.tpl adında tasarım dosyamızı oluşturuyoruz.
    <head>      
    <title><?=$baslik?></title>      
    </head><body>      
    <h1><?=$mesaj?></h1>      
    <h3><?=$slogan?></h3>      
    <hr>      
    <?=$kopirayt?>      
    </body>      
    </html>
    En son sitemizi göstereceğimiz index.php dosyamızı oluşturuyoruz.
    <?php  
    include("template.php");  
    ?>
    Tabiki sadece include ederek.Herhangi başka birşey yapmaya gerek yok.Tabi bunları bölümlere ayırarak header&footer olarakta yapabilirsiniz.Hayal gücünüzü kullanın.
    Uygulama dosyasını buradan indirebilirsiniz.
  • 28-03-2008, 21:57:24
    #35
    Eposta Aktivasyonu Gerekmekte
    Nettek adlı üyeden alıntı: mesajı görüntüle
    abi iki dakika nefes al bizim yazdıklarımızı oku
    acelen nereye anlamadım ki.
    patır patır kod mesajları atıyorsun
    ...
    dinleyen kim sanki ?
    Ben nefes alıyorum Mesajını okudum lakin elimden geleni yapmaya çalışıyorum iyi kaynakları bulup paylaşıyorum ve paylaşımımı yararlı buluyorum inşallah herkeste yararlı bulur.Ama kimseye yararlı olmadıysa bu konum özür dilerim
  • 28-03-2008, 21:58:46
    #36
    Üyeliği durduruldu
    Dogann adlı üyeden alıntı: mesajı görüntüle
    Ben nefes alıyorum Mesajını okudum lakin elimden geleni yapmaya çalışıyorum iyi kaynakları bulup paylaşıyorum ve paylaşımımı yararlı buluyorum inşallah herkeste yararlı bulur.Ama kimseye yararlı olmadıysa bu konum özür dilerim
    hiperaktif arkadaşım konuyu daha düzenli yapsan ?

    bu şekilde kimse bir nane anlamaz sana söyleyeyim.
    kimseye faydalı değil, sadece mesaj sayısı artmış bir üye olarak forumda kalırsın.