Jason技术交流

     认真的做好每一件事情,享受成功的乐趣!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理


 常常逛WWW的人,一定对许多起始页上的计数器感兴趣。每当你光临某个站点的起始页时,它的计数器就很亲切地告诉你,从某年某月某日开始,你是第几位光临的人。你可能也想在自己的HomePage内做计数器,有很多方法来实现此功能, 我这里给大家一个用FoxWeb实现的CGI计数器。

1.
首先用Visual FoxPro写一个CGI程序qywjs.prg,如下:

  *qywjs.prg  计数器CGI程序
  PROCEDURE qywjs
  clear
  km="h:\www\qywjs\qywjs.dbf"   
         &&
存计数器计数值库
  use &km
  repl js with js+1        
              &&
更新计数值  
  MSTRING=str(js,6)+CHR(13)+CHR(10)  
&&
将数据输出存入变量
  use
MSTRING="CONTENT-TYPE:TEXT/plain"+CHR(13)+CHR(10)
  +CHR(13)+CHR(10)+MSTRING
  *CONTENT-TYPE:TEXT/plain
FoxWebCGI程序输出数据第一行格式
  HTML_OUT=MERGETXT(MSTRING)   
   &&
将数据输出,既通过WWW服务器将数据输出
  RETURN

注:qywjs.dbf数据库只有一个字段,字段名:js;类型:数值型;长度:6

2.在起始页上,我们只要附上一个JavaApplet就可以取得目前计数器的值,JavaApplet程序如下:

   /*qywjs.java*/
  import java.awt.*;
  import java.net.*;
  import java.io.*;
  public class qywjs extends java.applet.Applet
   {
    Font fn=new Font("TimesRoman",Font.BOLD,14);
    /*
设置显示字体及大小*/
    String count_str;  /*
存计数器的值*/
    public void init() /*
初始*/
    {
      try
      {
        URL bookURL=new  URL
("http://10.65.76.64/scripts/foxweb.exe/qywjs
@h:\\www\\qywjs\\qywjs.PRG");  /*
调入CGI程序*/
        DataInputStream book_is;
book_is=new DataInputStream(bookURL.openStream());
count_str=book_is.readLine(); /*
读入计数值*/
  book_is.close();
        repaint();
      }
catch (MalformedURLException mfURLe)
{System.out.println("MalformedURLException:"+mfURLe);}
catch (IOException ioe)
{System.out.println("IOException:"+ioe);}
      }

    public void paint(Graphics g)  /*
显示*/
    {g.setFont(fn);
     g.setColor(Color.blue);
     g.drawString("
20070605开始,
    
你是第 "+count_str+" 位用户光临!",16,16);
    }
  }


3.
最后在自己的起始页HTML文件中加入如下程序段就行了。

 < !对外首页 2007/6/5 >
< HTML >
< HEAD >
。。。。。。
。。。。。。
< BODY >
。。。。。。
< APPLET CODE="qywjs.class"
WIDTH=200 HEIGHT=40 >< /APPLET >
。。。。。。
< /BODY >
。。。。。。
。。。。。。
< /HTML >

posted on 2008-11-22 16:16  cyhjason  阅读(197)  评论(0编辑  收藏  举报