• 18-01-2014, 11:39:23
    #1
    Merhaba arkadaşlar, Class yapısı ile uğraşıyorum bir çok sistemlerde örneğin $classismi->ekle(); şeklinde belirtince otomatik olarak veritabanına ekleme işlemi gerçekleştiriliyor. Görmüş olduğunuz gibi, EKLE() içerisine herhangi bir parametre girilmedi. bende bu şekilde yapmak istiyorum nasıl yapabilirim ?
  • 18-01-2014, 11:42:37
    #2
    parametre girmeden o çıktıyı veriyorsa direk class-function dışından belirli değişkenlerden işlem yapıyordur
    misal
    $asd = "asdf";
    function yaz(){
    global $asd;
    echo $asd;
    }
    yaz();
  • 18-01-2014, 11:50:04
    #3
    örneğin bir formum var ve 500 tane input alanım olduğunu varsayar isek,

    Sizin demiş olduğunuz gibi denediğimizde 500 değer tanımlaması yapmamız gerekecek.
    extract'da işe yaramaz diye tahmin ediyorum.
  • 18-01-2014, 12:13:13
    #4
    PiEycPi adlı üyeden alıntı: mesajı görüntüle
    örneğin bir formum var ve 500 tane input alanım olduğunu varsayar isek,

    Sizin demiş olduğunuz gibi denediğimizde 500 değer tanımlaması yapmamız gerekecek.
    extract'da işe yaramaz diye tahmin ediyorum.
    yani siz yine normal parametreli biçimde kullanmaya devam edin bunu daha çok misal

    function asd(){
    global $_GET['asd'];
    }

    gibi o sayfada sabit olacak değişkenlerde kullanmak gerekir misal wordpress fonksiyonları buna benzerdir get değerlerini global tanımlandığından content() gibi direk fonksiyon parametresi kullanmadan çağırıyor ama dediğin gibi 5-6 taneden fazla olduğundan ben kullanmamaya çalışıyorum genelde 1-2 tane idealdir bu tip fonksiyonlarda
  • 19-01-2014, 13:46:12
    #5
    Böyle olabilir.

    function ekle($array){
    $baslik=$array["baslik"];
    $deneme=$array["deneme"];
    return $baslik." ".$deneme."ekleniyor";
    }
    if($_GET){ 
    echo $eklermisin=ekle($_GET);
    }
    Kullanimi : index.php?baslik=kingofseo&deneme=metin1234
  • 20-01-2014, 14:47:07
    #6
    Üyeliği durduruldu
    önce tablolarının asagidaki gibi modellerini olusturmalisin. asagida contacts tablosunu ornek verdim. kolonlari id name surname gibi. umarim aciklayici olmustur.

    <?php
    class Contacts
    {
        protected $id;
        protected $name;   
        protected $surname;
        
        public function setName($name) {
            // kontroller
            $this->name = $name;
            return $this;
        }
    
        public function setSurname($surname) {
            // kontroller
            $this->surname = $name;
            return $this;
        }
    
        public function getId()
        {
            return $this->id;
        }
    
        public function getName() {
            return $this->name;
        }
    
        public function getSurname() {
            return $this->surname;
        }
    
        public function save()
        {
            // mysql_query("INSERT INTO contacts(name, surname) VALUES('".$this->name."', '".$this->surname."')")
            // insert edildimi kontrol
            $this->id = mysql_insert_id();
    
        }
    }
    
    $c = new Contacts();
    $c->setName("hede")
        ->setUserName("hodo")
        ->save();
    
    $eklenen_id = $c->getId();