• 29-03-2022, 00:49:04
    #1
    Proje için lisans sistemi hazırlamak istiyorum. Mantığı araştırırken, İnternette bir lisans sistemi buldum.

    "Çalışma prensibi 24 saatte bir istemci üzerindeki "lisans.php" dosyası içerisine otomatik bir lisans oluşturuyor. 24 saat sonra oluşturulan yeni lisans, önceden oluşturulmuş lisansla karşılaştırılıyor. Eşleşme olmadığında lisans sunucusuna bağlanıp, domain kontrolü sağlıyor. İlgili domain varsa oluşturulan yeni lisans tekrar "lisans.php" dosyası üzerine yazılıyor."

    Mantık güzel ancak anlamadığım, aşağıdaki kodlar içerisinde 24 saatte bir yeni lisans oluşturuluyor ve karşılaştırılır denilmiş. 24 saat içerisinde yeni lisans oluşturulup, sorgulandığı kodun tam olarak neresinde yer alıyor, işlem süresi hakkında bir kod göremedim. Ben de mi bir sorun var

    INDEX PHP
    
    <?php
    require('lisans.php');//lisans.php dosyasini ekle
    $lisans['site']=getenv('HTTP_HOST');//site domainini al
    if (substr($lisans['site'], 0, 4) == "www.")//domain basindaki www. varmi yokmu kontrol et
    $lisans['site']=substr($lisans['site'],4);//www. sil ve sadece domain.com olarak adresi al
    
    $bas = "RIBIKU-";//Lisans kodu başına istediğiniz yazı eklenebilir
    $son = "-2015";//Lisans kodu sonuna istediğiniz yazı eklenebilir
    $m = "md5";//md5 sifreleme
    $s = "sha1";//sha1 sifreleme
    
    
    $lisans['hash']=wordwrap(strtoupper($s ($s ($s ($s ($m ($s ($s ($m ($lisans['site'].date('Ymd')))))))))),5,'-',true);//lisans kodunu olustur ve 5 karakterde bir - koy
    $liskod = $lisans['hash'];
    $cevir=strrev($liskod);//lisans kodunu tersine cevir
    $bcs = "$bas$cevir$son";
    
    if($bcs!==$lisanskodu)//lisans kodunu kontrol et fark varsa sunucuya baglan - 24 saatte bir lisans kodu degisir
    {
    $lisans_cevap=file_get_contents('http://localhost/lisans/kontrol.php?site='.$lisans['site']);//lisans sunucusundan lisans kontrolu yap
    if($lisans_cevap!='LISANSLI')//sunucudan gelen cevap LISANSLI degilse
    
    die('Bu siteye ait lisans bulunamadi!!!');//lisans gecersiz mesaji verilir islem durur
    
    $lyaz = fopen('lisans.php',"w+");//lisans.php dosyasini ac yeni lisans kodunu yaz bu dosya yazılabilir olmalıdır
    @fwrite($lyaz,'<?php
    /**
        Php Lisans Sistemi
        Copyright (C) 2015  example.com
        admin@example.com
        www.example .com
        
        Bu dosyaya herhangi bir lisans kodu yazmaniz gerekmez
        Almis oldugunuz urune ait lisans sistemde aktif oldugunda
        Lisans kodunuz otomatik olarak girilecektir.
        
        Yeni lisans almak icin www.example.com adresini ziyaret edebilirsiniz
    
     */
    $lisanskodu="'.$bcs.'";
    ?>');
    fclose($lyaz);
    }
    echo "$bcs";//geçerli lisans işleme devam
    ?>
    <?php
            /**
                Php Lisans Sistemi
                Copyright (C) 2015
                admin@example.com
                www.example.com
                
                Bu dosyaya herhangi bir lisans kodu yazmaniz gerekmez
                Almis oldugunuz urune ait lisans sistemde aktif oldugunda
                Lisans kodunuz otomatik olarak girilecektir.
                
                Yeni lisans almak icin www.example.com adresini ziyaret edebilirsiniz
    
             */
            $lisanskodu="RIBIKU-7FC3D-0082F-46EAD-D7B0A-8CD12-771D9-453CA-E90FA-2015";
            ?>
    <?php
    /*
    kontrol.php dosyası sizin sitenizde olacaktır izinli domainler bu dosyaya eklenecek.
    Bu listeden silinen sitelerin çalışması günlük lisansın değişeceği saat 00:00 da sona erecektir.
    Bu listeden lisansı silinen site gece saat 00:00 olana kadar sorunsuz çalışacaktır.
    */
    $lisansli_siteler=array('example.com',
                            'localhost',
                            'site1.com',
                            'site2.com',
                            'site3.com');
    if(in_array(urldecode($_GET['site']),$lisansli_siteler))
    echo 'LISANSLI';
    else
    echo 'IZINSIZ KULLANIM';
    ?>
  • 29-03-2022, 00:50:12
    #2
    Link atarsanız çok daha iyi olur hocam

  • 29-03-2022, 00:51:50
    #3
    SarSeoAgency adlı üyeden alıntı: mesajı görüntüle
    Link atarsanız çok daha iyi olur hocam

    Düzenlendi, ışık hızında yanıt vermişsiniz hocam
  • 29-03-2022, 00:52:12
    #4
    AKSOYOGLU adlı üyeden alıntı: mesajı görüntüle
    Düzenlendi, ışık hızında yanıt vermişsiniz hocam
    Teşekkürler hocam şimdi gördüm düzeldiğini sizde maşallah ışık hızında değiştirmişsiniz
  • 29-03-2022, 00:52:31
    #5
    Anladığım kadarıyla cookie oluşturmuş, onu da if ile kontrol etmiş, çok spagetti olmuş hocam sadece değişkenlere bakarak anlamaya çalıştım, belki de öteki .php uzantısından çekiyordur.
    • AKSOYOGLU
    AKSOYOGLU bunu beğendi.
    1 kişi bunu beğendi.
  • 29-03-2022, 00:56:36
    #6
    $lisans['hash']=wordwrap(strtoupper($s ($s ($s ($s ($m ($s ($s ($m ($lisans['site'].date('Ymd')))))))))),5,'-',true);//lisans kodunu olustur ve 5 karakterde bir - koy
    burada hash olustururken o gunun tarihi ile olusturuyor haliyle bir sonraki gun hash degisiyor. bunu anlatmaya calismis.
  • 29-03-2022, 00:58:41
    #7
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Anladığım kadarıyla cookie oluşturmuş, onu da if ile kontrol etmiş, çok spagetti olmuş hocam sadece değişkenlere bakarak anlamaya çalıştım, belki de öteki .php uzantısından çekiyordur.
    İlginize teşekkür ederim hocam, kodların tamamı yukarıdadır. Lokalde denendi sorunsuz çalışıyor ancak 24 saatte işlem sağlama durumunu çözemedim.
  • 29-03-2022, 01:00:25
    #8
    OETeknoloji adlı üyeden alıntı: mesajı görüntüle
    $lisans['hash']=wordwrap(strtoupper($s ($s ($s ($s ($m ($s ($s ($m ($lisans['site'].date('Ymd')))))))))),5,'-',true);//lisans kodunu olustur ve 5 karakterde bir - koy
    burada hash olustururken o gunun tarihi ile olusturuyor haliyle bir sonraki gun hash degisiyor. bunu anlatmaya calismis.
    Aynennn, kontrol.php de de get ile aldığı değeri karşılaştırıyor.
  • 29-03-2022, 01:05:04
    #9
    OETeknoloji adlı üyeden alıntı: mesajı görüntüle
    $lisans['hash']=wordwrap(strtoupper($s ($s ($s ($s ($m ($s ($s ($m ($lisans['site'].date('Ymd')))))))))),5,'-',true);//lisans kodunu olustur ve 5 karakterde bir - koy
    burada hash olustururken o gunun tarihi ile olusturuyor haliyle bir sonraki gun hash degisiyor. bunu anlatmaya calismis.
    Çok mantıklı, dikkatsizlik tamamen, ilginize çok teşekkür ederim.