• 07-11-2009, 12:57:58
    #1
    Arkadaşlar şu anda yazmakta olduğum bitmesine az kalan bir projem var. Bu scripti satışa sunacağım fakat projenin bitmesine yakın bir zamandayken bu lisans konusu çok kafama takılıyor. Daha önce kendi scriptlerini lisanslayarak satışa sunan vb. arkadaşlardan fikir almak istiyorum.

    1.Siz bu lisanslama konusunda ne gibi yöntemler kullanıyorsunuz? (Çok özel ise ÖM ilede yazabilirsiniz)
    2.Lisansladıktan sonra scripti kullanan sitelerin hızında herhangi bir sıkıntı oluyormu?

    TXT dosyası ile yapılan lisanslama işlemi kısmen işimi görüyor fakat benim istediğim XML ile lisans yöntemi. Bu konudaki araştırmalarım sonucu
    http://forum.ceviz.net/php/77508-php...tml#post487803 linkindeki makaleyi okudum ve hoşuma gitti fakat nasıl kullanacağım hakkında tam bir bilgiye sahip değilim;

    Örnek XML Lisans Dosyamız;
    <?xml version="1.0"?>
    
    <note>
    <to>domain.com</to>
    <from>12132x98asdsa</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
    </note>
    Şimdi bu şekilde bir XML dosyası oluşturduktan sonra,

    <?
        $Veri     = array(); 
        $kaynak = file_get_contents("http://dizix.poisnet.net/lisans.xml");
        $temp     = split("<note>",$kaynak);
        for ($i=1;$i<=5;$i++){ 
            if(trim($temp[$i])==''){continue;} 
            preg_match('/<to>(.*)<\/to>/i', $temp[$i], $to); 
            preg_match('/<from>(.*)<\/from>/i', $temp[$i], $from); 
            preg_match('/<heading>(.*)<\/heading>/i', $temp[$i], $heading); 
            preg_match('/<body>(.*)<\/body>/i', $temp[$i], $body);
            array_push($Veri,array($to[1],$from[1],$heading[1],$body[1])); 
        }
            echo '<pre>';
        for($x=0;$x<=4;$x++) {
            echo "\n".'<b>To&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;: </b>';
            @print_r($Veri[$x][0]);
            echo "\n".'<b>From &nbsp;&nbsp; &nbsp;   : </b>';
            @print_r($Veri[$x][1]);
            echo "\n".'<b>Heading     : </b>';
            @print_r($Veri[$x][2]);
            echo "\n".'<b>Message     : </b>';
            @print_r($Veri[$x][3]);
            echo "\n".'------------------------------------------------------------------------'; 
        }
            echo '</pre>';
    ?>
    ile verileri çektim. Fakat bir problem var, yukarıdaki kod betiği komple xml'i ve sadece 5 veriyi çekti ve içini basıyor, benim yapmak istediğim ise, XML dosyasından sitenin domain'i arayacak bulacak ve sadece onu altındaki bilgileri çekecek.

    Biraz karışık ve uzun bir konu oldu ama sanırım anlatabilmişimdir...
  • 07-11-2009, 13:02:19
    #2
    Üyeliği durduruldu
    ionCube haricinde hemen hemen bütün yöntemler kırılabiliyor. söylediğin yöntem kolayca kırılabilir. Alabilirsen ionCube lisansı almanı öneririm.
  • 07-11-2009, 13:06:16
    #3
    Şimdi siz sanırım scripti verdiğiniz her domaınde site açılmadan önce xml i çekip oradan domainin olup olmadıgına bakacaksınız doğru mudur?
  • 07-11-2009, 13:13:15
    #4
    Zaten ioncube ile şifreleyeceğim scripti şifreleme kısmı değil şu anda lisans kısmı problem.

    @Codeking şimdi zaten script cache sistem ile çalışıyor, ben kodu açılışı yavaşlatmasın diye footer'a ekleyeceğim. 2 saatte bir cache temizlenecek ve xml'den lisans kontrolunu yapacak.

    Yani sayfa her yenilendiğinde xml bağlanmayacak Fakat temelinde evet her site açılışında xml'i kontrol edecek.
  • 07-11-2009, 13:32:37
    #5
    tecnohalil adlı üyeden alıntı: mesajı görüntüle
    Zaten ioncube ile şifreleyeceğim scripti şifreleme kısmı değil şu anda lisans kısmı problem.

    @Codeking şimdi zaten script cache sistem ile çalışıyor, ben kodu açılışı yavaşlatmasın diye footer'a ekleyeceğim. 2 saatte bir cache temizlenecek ve xml'den lisans kontrolunu yapacak.

    Yani sayfa her yenilendiğinde xml bağlanmayacak Fakat temelinde evet her site açılışında xml'i kontrol edecek.
    Bu tür bir lisans sistemi her ne olursa olsun sistemi yeri gelince olumsuz etkileyebilir.Örneğin xml 'i çektiği url devre dışı kaldı böyle bir durumda sistem xml 'i çekemeyeceği için kullanıcılar sorun yaşayacaktır.Böyle bir sistem yerine if else koşulları ile örneğin scriptin ayar.php iiçerisine lisans diye bir değişken belirleyip diğer sayfalar içerisinde bu lisansı kontrol edebilirsin.

    örnek olarak site adresini md5 & sha1 gibi algoritmalarla şifreleyip buna göre bir kontrol yaptırabilirsin.


    
    
    <?php
    $lisans="lisanskodu";
    
    $kontrol=md5(getenv("SERVER_NAME")."ekbircümle");
    
    if($lisans!=$kontrol) die ("Lisans yok !");
    
    // lisans aktif ise yapılacaklar
    
    
    echo "Lisans aktif";
    
    
    ?>
  • 07-11-2009, 14:17:50
    #6
    XML'yi çektiği URL devredışı kalmayacak bir konumda ben XML ile yapmak istiyorum bu konuda yardımcı olabilirmisiniz??
  • 07-11-2009, 15:03:14
    #7
    Üyeliği durduruldu
    tecnohalil adlı üyeden alıntı: mesajı görüntüle
    XML'yi çektiği URL devredışı kalmayacak bir konumda ben XML ile yapmak istiyorum bu konuda yardımcı olabilirmisiniz??
    basir bir örnek vereyim satır satır kasmanada gerek yok tek satırdan, attribute de kullanarak data çektirdim örnekte;

    <?php
    $xml = '
    <lisans domain="www.site.com">32323sadada56566</lisans>
    <lisans domain="www.hede.com">32323sadada56580</lisans>
    ';
    preg_match_all('#<lisans domain="(.*?)">(.*?)</lisans>#i', $xml, $lisans);
    $lisans = array(
        'domain' => $lisans[1], 
        'lisans_kod' => $lisans[2]
    );
    echo "<pre>";
    print_r($lisans);
    ?>
    print_r çıktısı;
    Array
    (
        [domain] => Array
            (
                [0] => www.site.com
                [1] => www.hede.com
            )
    
        [lisans_kod] => Array
            (
                [0] => 32323sadada56566
                [1] => 32323sadada56580
            )
    
    )
    $lisans['lisans_kod'] dizi değişkeni içerisinde array_search yaptırarak kontrol ettirebilirsin lisans kodunu. xml değişkeninin içinede file_get_contents ile xml çektirebilirsin.
  • 07-11-2009, 15:05:15
    #8
    Üyeliği durduruldu
    devturkeli adlı üyeden alıntı: mesajı görüntüle
    ionCube haricinde hemen hemen bütün yöntemler kırılabiliyor. söylediğin yöntem kolayca kırılabilir. Alabilirsen ionCube lisansı almanı öneririm.
    ioncube de kırılıyor malesef.
  • 07-11-2009, 15:07:44
    #9
    Üyeliği durduruldu
    Sati adlı üyeden alıntı: mesajı görüntüle
    ioncube de kırılıyor malesef.
    okadarını biliyorum :P fakat uçuk fiyatlara kırılabiliyor komple bir script ayrıca ioncubenin kırılma olayı için bir güncelleme yaptıgını duydum.