PHP Classes
Icontem

File: app/example.callhome.php


  Search   All class groups All class groups   Latest entries Latest entries   Top 10 charts Top 10 charts   Newsletter Newsletter   Blog Blog   Forums Forums   Help FAQ Help FAQ  
  Login   Register  
Recommend this page to a friend! ReTweet ReTweet Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Oliver Lillie  >  PADL (PHP Application Distribution License System)  >  app/example.callhome.php  
File: app/example.callhome.php
Role: Example script
Content type: text/plain
Description: Demo file
Class: PADL (PHP Application Distribution License System)
Generate PHP application license keys
 

Contents

Class file image Download
<?php

    
/**
    * Project:        Distrubution License Class
    * File:            example.callhome.php
    * File type:     DEMO
    * Notes:        This file is a demonstration file that illustrates how the
    *                call on the clients server can be made to your server
    *                validating the clients license. As it validates from to
    *                my server it requires a live internet connection to function
    *
    * Copyright (C) 2005 Oliver Lillie
    * 
    * This program is free software; you can redistribute it and/or modify it 
    * under the terms of the GNU General Public License as published by  the Free 
    * Software Foundation; either version 2 of the License, or (at your option) 
    * any later version.
    *
    * This program is distributed in the hope that it will be useful, but 
    * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
    * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 
    * for more details.
    *
    * You should have received a copy of the GNU General Public License along 
    * with this program; if not, write to the Free Software Foundation, Inc., 
    * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA    
    *
    * @link http://www.buggedcom.co.uk/
    * @link http://www.phpclasses.org/browse/package/2298.html
    * @author Oliver Lillie, buggedcom <publicmail at buggedcom dot co dot uk>
    * @version 0.1
    * @history---------------------------------------------
    * see CHANGELOG
    */

    # copy the server vars (important for security, see note below)
    
$server_array $_SERVER;

    echo 
'<link rel="stylesheet" type="text/css" href="../shared/styles.css">';
    echo 
'<body>'."\r\n";
    echo 
'<span class="header">'."\r\n";
    echo 
'<b>########################################################################</b><br />'."\r\n";
    echo 
'<b>Dial Home Demostration</b><br />'."\r\n";
    echo 
'This file is a demonstration file that illustrates how to perform a dial home check<br />'."\r\n";
    echo 
'<span style="font-size: 10;">'."\r\n";
    echo 
'<b>Oliver Lillie, buggedcom [publicmail at buggedcom dot co dot uk]<br />'."\r\n";
    echo 
'<a href="http://www.buggedcom.co.uk/" target="_blank" style="color: #F00">http://www.buggedcom.co.uk/</a></b><br />'."\r\n";
    echo 
'</span>'."\r\n";
    echo 
'<b>########################################################################</b><br /><br />'."\r\n";
    echo 
'</span>'."\r\n";

    
# import the classes
    
include_once('../shared/class.license.lib.php');
    include_once(
'class.license.app.php');

    
# initialise the class with mcrypt off to maximise compatability with servers
    
$application = new license_application('license.supplied.dat'falsetruefalsetrue);
    
    
# set the server vars
    # note this doesn't have to be set, however if not all of your app files are encoded
    # then there would be a possibility that the end user could modify the server vars
    # to fit the key thus making it possible to use your app on any domain
    # you should copy your server vars in the first line of your active script so you can
    # use the unmodified copy of the vars
    
$application->set_server_vars($server_array);

    
# the key to be validated
    # the key below contains the id used in the home server db. it was created like so
    # $application->generate(array('_LICENSE_ID'=>1));
    # validate the data from the key
    
$set_data $application->validate(falsetrue'www.buggedcom.co.uk''http://www.buggedcom.co.uk/distributionlicense/files/server/demo.receive.license.php');
    
    echo 
'<b>########################################################################</b><br />'."\r\n";
    echo 
'<b>Set License Key Validation Example</b><br />'."\r\n";
    echo 
'The set key is validated to an id in my db on my server. It dials home to...<br />'."\r\n";
    echo 
'<b>########################################################################</b><br /><br />'."\r\n";
    echo 
'<b><span style="color: #F00">Supplied License is : '.$set_data['RESULT'].'</span></b><br />'."\r\n";
    if(
$set_data['RESULT'] == 'OK')
    {
        echo 
'<span style="font-size: 10;color: #F00;">'."\r\n";
        echo 
'Key is valid untill : '.$set_data['DATE']['HUMAN']['END'];
        echo 
'</span><br />'."\r\n";
    }
    echo 
'<br /><b>License Key</b><br />'."\r\n";
    echo 
'<pre>'file_get_contents($application->_LICENSE_PATH) .'</pre><br />'."\r\n";
    echo 
'<b>License Key Contents</b><br />'."\r\n";
    echo 
'<pre>';
    
# validate the key from my server
    
print_r($set_data);
    echo 
'</pre><br />'."\r\n";
    echo 
'</span>'."\r\n";

    
# make the application secure by running this function
    # it also prevents any future reincarnations of the class calling any of the 
    # key generation and validation functions, it also deletes any class variables
    # that may be set.
    
$application->make_secure();

    
# delete the $application object
    
unset($application);

    echo 
'</body>'."\r\n";

?>

 
  Advertise on this site Advertise on this site   Site map Site map   Statistics Statistics   Site tips Site tips   Privacy policy Privacy policy   Contact Contact  

For more information send a message to :
info at phpclasses dot org.
Copyright (c) Icontem 1999-2009 PHP Classes - PHP Class Scripts
  PHP Book Reviews - Reviews of books and other products