• 29-10-2012, 02:55:07
    #1
    Şu anda geliştirmeye yeni başladığım bir script var, lakin takıldığım bir konu var nasıl yapsam düşüncesindeyim.

    A kategorisinin içinde iller var diyelim
    istanbul izmir bursa lakin ilçeler yok

    B kategorisinde
    iller alanı var yine ama bu sefer ilçeler ve mahalleler de var diyelim

    C kategorisi ise bundan apayrı ve çok farklı alanları var
    örneğin bisiklet rengi ve topun deseni

    Kişi a kategorisinde açtığı her sayfada içerik girerken sadece il seçebilirken
    b kategorisinde açtığı her sayfada ilçe ve mahalle seçecek ayrıca il de dahil
    c kategorisinde açtığı sayfada ise sadece bisiklet rengi ve top deseni alanı olacak il,ilçe ve mahalle olmayacak.

    bu alanlar form alanlarıdır sadece ilgili kategorinin sayfa oluşturma bölümünde doldurulması gereken alanlar olacak.

    nasıl bir mantıkla kategorilerin özel alanlarını ve ortak alanlarını oluşturabilirim kafam burada durdu.
  • 29-10-2012, 06:42:58
    #2
    Üyeliği durduruldu
    Konunun açıklamasını öncelikle pek anlayamadım. Ancak eğer scriptin wordpress veya herhangi bir scriptse (kendi yazmış olduğun script de olabilir) id alarak mysql dan post id sine göre kategoriyi çekersin. kategoriyi bir değişkene atayıp include("alanlar/".$kategori."); şeklinde kullanırsın.
  • 29-10-2012, 06:46:42
    #3
    Wordpress değil, kendi yazdığım bir script. Anlatmak istediğim her kategorinin kendine has form alanları olacak. Bazı kategorilerde olan form alanları diğer kategorilerde olmayacak ve bunların mysql kayıtları.
  • 29-10-2012, 07:11:23
    #4
    elseif kullanarak her kategoriye farklı şekiller deneyebilirsiniz.
  • 29-10-2012, 07:12:59
    #5
    Üyeliği durduruldu
    Deimosx adlı üyeden alıntı: mesajı görüntüle
    Wordpress değil, kendi yazdığım bir script. Anlatmak istediğim her kategorinin kendine has form alanları olacak. Bazı kategorilerde olan form alanları diğer kategorilerde olmayacak ve bunların mysql kayıtları.
    kategorilerin idleri ile dosyaları oluşturun örnek kategori idmiz 14 olsun. bir klasör açın adı alanlar olsun. alanlar klasörünün içinde 14.php açınız.

    kategori idsini $kategori değişkeni ile aldığınızı varsayalım.

    kullanmanız gereken kod :

    <? include("alanlar/".$kategori.".php"; ?>
    ardından sayfanın alanlarını kodlayın. ancak biraz uğraştıracaktır.
  • 29-10-2012, 21:56:30
    #6
    Ayrı dosyalarda olması sıkıntı mysql tabanlı cozum arıyorum.
  • 29-10-2012, 22:07:44
    #7
    şu şekilde yapabilirsin

    kategoriler tablosuna izinler diye bir sütün açıp, şu şekildede yazdırabilirsin

    kategoriler | izinler
    a kategorisi | il
    b kategorisi | il,ilce,semt
    c kategorisi | bisiklet_rengi,topun_deseni

    sonra içerik ekleme sayfasında izinlere göre alanları seçtirebilirsin.
  • 29-10-2012, 22:09:47
    #8
    alan_id | alan_ismi | alan_kategori_id

    sonra kategori detay sayfasında gösterirken önce kategoriye göre alanı getirebilirsin.

    admin panel tarafında, ürün eklerken hangi kategori seçildiyse o alanları getirirsin. onları doldurur kullanıcı.
  • 29-10-2012, 22:15:31
    #9
    şöyle şeyler dene;

    id : 1 kategorisinin formunu veritabanına girerken
    $array[0] = array('label' => 'Şehir Seçiniz', 'name' => 'sehir', 'type' => 'selectbox', 'id' => 'sehir', 'width' => 'auto', 'options' => array()...);
    $array[1] = array('label' => 'Formu Gönder', 'name' => 'submit', 'type' => 'submit', 'id' ...)
    (bu verileri parçalayan oluşturan bir sınıf yazman da uygun olacaktır)
    Bu sınıfa örnek :

    class ...
    function select_box($attributes)
    {
        // multiple, olup olmadığı da burada kontrol edilebilir örneğin.
        return '<select .... >';
    }
    
    function text_box($attributes)
    {
        ....
    }
    if($array[$key]['type'] == 'selectbox')
    {
    $class->select_box($array[$key]);
    }

    kodunu serialize edilmiş bir şekilde veritabanına girecek bir kod muhtemelen yönetim paneline bunu ekleyen formu yazarsın. (Array verilerini veritabanında serialize ederek saklarken ' " karakterlerinde hata alabilirsin. Buraya dikkat etmek gerekir)

    çağırırkende kategori id'yi bulduktan sonra öncesinde oluşturmuş olduğun forms tablosundan bunları sırasıyla alırsın.

    Güzelleştirilmiş şeklini e-ticaret sisteminde her kategoriye ait arama formunda kullanıyorum. Cep telefonu ile kiralık ev arama arasında kriter olarak fark var..