实施本地PHP应用程序的试用期

时间:2012-04-05 05:14:47

标签: php localhost trial

我最近完成了我的PHP应用程序,我想知道是否有可能有一个试用期。因此,当达到该时间段时,屏幕上会出现错误。

感谢您的时间和答案。我非常感谢他们。

4 个答案:

答案 0 :(得分:3)

您可以使用Zend Encoder或Ioncube对信号源进行加密,或对其进行模糊处理。

但事实是,上面的所有内容都可以修补。因此,如果目标用户经验足够 - 他们可以删除您的试用期检查。

答案 1 :(得分:1)

是的,你可以:我在前一段时间出现需求时做了同样的事情。它很简单,你可以改善它。     遵循此算法;

  1. 获取今天的约会
  2. 设置试用期
  3. 将试用期添加到今天(作为开始日期)以获取到期日期
  4. 检查以上代码是否在执行之前已执行        如果没有,那么将startdate和`expierydate`发送到mysql中的表中        否则得到开始日期并与今天比较
           如果匹配displ
  5. 这是代码。

    function timebomb(){
      $today = date("d-M-Y",time());
      $trialPeriod = 1;
      $startDate = date("d-M-Y", time());
      $getExpiryDate = strtotime('+'.$trialPeriod."days", strtotime($startDate));
      $expiryDate = date("d-M-Y", $getExpiryDate);
      $checkStatus = mysql_num_rows(mysql_query("SELECT * FROM timebomb"));
        if($checkStatus == 0){
        mysql_query("INSERT INTO timebomb(StartDate,ExpiryDate) values   
             ('$startDate','$expiryDate')") or die(mysql_error());
       }else{
       $getPeriod = mysql_query("SELECT * FROM timebomb");
        WHILE($period = mysql_fetch_object($getPeriod)){
        $endOfTrial = $period->ExpiryDate;
        }
        IF($endOfTrial == $today){`enter code here`
        echo 
    
        <center><font size='5' color='red'>
     PLEASE YOUR TRIAL PERIOD IS OVER. 
     IF YOU ENJOYED USING THIS PRODUCT, <br/>
     CONTACT ALBERT (0205173224) FOR THE FULL VERSION. 
      THANK YOU."
    
    ;
        exit();
                }
    
            }
    
        }
    timebomb();
    

答案 2 :(得分:0)

一种解决方案可以是使用应用程序的某些编译(或字节编译)形式而不是源文件。结帐这个链接。 http://php.net/manual/en/book.bcompiler.phphttp://www.phpcompiler.org

答案 3 :(得分:0)

按照以下步骤在php项目中完全安全的试用期...

<强> 1 即可。在数据库中创建一个用于试用期的表

ex. trial(id,reg_date,days_of_trial).

<强> 2 即可。在索引页面或登录页面中,添加代码逻辑如下

i.get 'reg_date','days_of_trial' from 'trial' table.<br/>
   ii.get today's date.<br/>
   iii.calculate difference using as $dDiff= date_diff($reg_date,$today); <br/>
   iv.now compare difference with 'days_of_trial'.<br/><br/>
      ex. <br/>
          if($dDiff->days>=$row['days_of_trial'])<br/>
            {    <br/>
                 v.update trial table set days_of_trial=0.<br/><br/>
                 //redirect to expired page..<br/><br/>
              ex.
              header("Location:http://localhost/project_dir/expired/index.php");}.

第3 即可。在expired / index.php文件中删除项目主目录为.. <br/><br/>

    ex.
<br/>
          if(file_exists("../folder1"))<br/>
          rmdir("../folder1");  
   redirect to expired page wherein you can display "Trial expired  message"<br/>
    ex.
<br/>
           header("Location: http://localhost/proj_dir/expired/expired.html");<br/><br/>

<强> 4 即可。现在替换原始主页代码以重定向到过期页面。

ex.
    $file = fopen("../index.php","w");<br/>
fwrite($file,"<?php header('Location: http://localhost/proj_dir/expired/');?>");<br/>
fclose($file);<br/>
  • 别忘了备份项目目录和数据库..
  • 您的php项目在试用期内完全受到保护.....