简易实现网上动态信息发布

2016-02-19 13:14 4 1 收藏

清醒时做事,糊涂时读书,大怒时睡觉,无聊时关注图老师为大家准备的精彩内容。下面为大家推荐简易实现网上动态信息发布,无聊中的都看过来。

【 tulaoshi.com - 编程语言 】


  绪论
  ----目前Internet发展迅速,随着网络技术不断提高,网上内容极大丰富,从高科技到衣食住行应有尽有,网上用户也从当初的科研人员发展到了各行各业的人士,甚至平常百姓、家庭主妇。有关专家推测,到2000年Internet的用户将超过亿。可以说,Internet是一个广阔的市场。如何充分利用这个工具,加速信息的流通、发布,是许多商业人士思考的问题。目前许多出版社,杂志社纷纷出台在网上发布、刊登信息。
  ----总的看来,根据这些信息发布的特点可以分为三类:
  
  ----(1)站点成熟,功能强大,具备多种查询方式。它们一般利用大型数据库软件,如MSSQLServer、Oracle、sybase。这是目前一些大的信息发布商所采取的方案。一般造价比较高,光这些软件的费用就由10,000~45,000,另外还得专门配备系统治理员。这远是一些小单位、小企业所能承受的。
  
  ----(2)站点简单,具有简单查询功能。通常是由软件公司编写建立的数据库,性能不一定很成熟,而且价格约20,000左右。一般小企业也不能承受。另外程序开发需要时间,不能马上进行运转。
  
  ----(3)站点简单,没有数据库,无或极少具有查询功能,一般是信息罗列,一般信息更新周期长。维护麻烦,每次更新的工作量大。
  
  ----如何找到一种简单、迅速、便宜的信息发布方式。我在建设"中国改革"网站的时候,也碰到过这个问题,经过一些尝试,建立了一一个解决方案。
  
  方案背景:
  ----信息发布《每日财经信息》,共有26个栏目,每个栏目10~40条信息,每条信息200~600字。每日信息量100K,需要每个工作日更新。由于单位经费紧张,任务要求的时间较紧。短时间内不可能找公司编辑数据库软件或上大型数据库。但领导要求该信息得能够按照日期查询,并能够提供访问权限,实行收费。
  方案考虑:
  ----1.原文件格式的处理
  ----由于信息源为纯文本文件按照各个栏目存放在相应的子目录内,要将它转换为Html文件格式以便能以更好的方式在网络上显示。
  ----2.每日信息目录索引的建立
  ----为方便访问者的查阅,有必要建立一个信息的索引。提供显示每条信息的标题或简介。并且访问者可以直接通过索引查阅到相应文章。这就要求索引上必须有与相应信息文本的超连接。
  
  ----3.日期查询的实现
  ----对于信息的日期查询,考虑到信息存储空间的限制,只提供一定时间段的信息。由于这些时间段是动态的,为了不使查询工作繁琐,以及保持显示界面的简洁明了,动态更新日期列表。并使其与相应的信息目录索引进行联结。
  
  ----4.信息的访问权限
  ----使用最简单的加密方法,将信息文本放在固定的子目录中,对服务器进行设置,设制对该目录的访问权限以实现对信息的访问控制。
  
  解决方法(以九月七日的信息处理为例):
  ----编写程序html.exe。其功能是:
  ----(1),读取当日信息日期。
  ----(2),查找相应日期的源文件存放目录,读取目录下相应的文件。
  ----(3),提出文件的标题字符串,放入当日的目录索引文件中。(例如index907.html)在放入的时候对它进行处理建立相应的超连接。另外对目录索引文件进行处理,加入背景、及书签方便阅读。
  ----(4),对信息的原纯文本文件进行处理,加入背景、字体等修饰,使之成为标准的HTML文件。
  ----(5),生成当日的日期查询列表:修改上次的列表,删除最早的日期,增加当日日期,保证以一个固定的时间段的信息量。这样却保有一个稳定的存储空间,并且避免出现由于非工作日无信息而导致的用户连接找不到相应地址的情况。
  
  ----通过程序html.exe的运行对原信息进行相应处理,生成三组文件:
  
  ----1-信息文本,2-目录索引,3-日期索引。
  
  ----每日将生成的三组文件上载到相应的子目录即实现了对信息的每日更新。
  
  方案的优点:
  每日的维护简单,操作轻易,一般操作员都能很快上手。
  
  整个操作安全稳定,不会出现连接中断网址找不到的情况。
  
  费用很低,不需要购买大型数据库软件和编写专业的查询软件。
  
  实现时间短,能够在较短的时间里实现信息的动态网上发布。
  
   程 序 清 单:
  
  #include stdio.h
  #include string.h
  #include conio.h
  
  #define LANXMAX 150
  
  FILE *FileR,*FileW,*FileWIndex;
  
  char Path1[]="c:htmlmrcj";
  char Path2[]="c:htmlmrcjxt";
  char Path3[50];
  char Path4[]="c:htmlccrindex.htm";
  char Path5[]="c:htmlhtml.ini";
  char Path6[]="c:htmlhtml-1";
  char Path7[]="c:htmlhtml-2";
  
  char Month[10],Date[10];
  char FileName[50];
  char FileNameIndex[20];
  char FilePath1[50]; //...08
  char FilePath2[50]; //...08jxxta
  char WriteFileName[50];
  char IndexFileName[50];
  char FileBak[5];
  char LanMu;
  char Time[20];
  char YEAR;
  char IndexLANMU[6][19]={"中外财经要闻","法律法规政策","经济形势分析",
                          "企业改革透视","社会保障制度","改革发展研究"};
  
  int FileNum;
  int Yea,Mon,Dat;
  
  void FileIni()
  {
    switch(Yea)
    {
      case 98:
      case 1998:
        YEAR='B';
        break;  
      case 99:
      case 1999:
        YEAR='J';
        break;
      default: YEAR='B';
    }
    if(Yea 100) Yea+=1900;
    FileNum=0;
    sprintf(FilePath1,"c:fl%02d",Dat);
    sprintf(FileBak,".%1X%02d",Mon,Dat);
  }
  
  void AddFileProc(int num)
  {
    char FLanRead[LANXMAX];
    char MainLan[LANXMAX];
    char FENLEI[50];
    char IndexLan[150];
    int i;
    sprintf(FENLEI,".中国改革.每日财经信息.%02d月%02d日brbr",Mon,Dat);
    printf("*");
    sprintf(FileName,"%sjxxt%c%03d%s",FilePath2,LanMu,num,FileBak);
    if(!(FileR=fopen(FileName,"rb")))
    {
      printf("cannot open this file");
      return;
    }
    //-------------add htmlhead------------
    fputs(" html body background="../../../../images/bk_creform.jpg"",FileW);
  
     //-------------add htmlhead------------
    fputs(FENLEI,FileW);
    fgets(FLanRead,LANXMAX-5,FileR);
    //---------add index procedure---------
    sprintf(IndexLan," a href="txt/%02d/%s" target="new"%sbr",Dat,FileNameIndex,FLanRead);
    //fputs(" br ",FileWIndex);
    fputs(IndexLan,FileWIndex);
    //---------add index procedure---------
    while(!feof(FileR))
    {
      fputs(" br ",FileW);
      fputs(FLanRead,FileW);
      strcpy(FLanRead,"");
      fgets(FLanRead,LANXMAX-5,FileR);
    }
    FLanRead[strlen(FLanRead)-1]='

来源:http://www.tulaoshi.com/n/20160219/1603479.html

延伸阅读
红点怎么发布动态   红点怎么发布动态?红点发布动态教程。红点是一款视频直播软件,直播的时候遇到一些奇葩的人?不方便在直播间里面说?但是想要发泄?小伙伴们可以在红点里面发布动态,那么怎么发布动态呢?现在图老师小编就教大家红点怎么发布动态。 1)点击打开,点击右上角的;(如下图) 2)点击下方的,然后点击下...
脉脉怎么发布动态   脉脉怎么发布动态?脉脉发布动态方法。脉脉是一款社交应用,在脉脉中发布动态,让更多的人也能认识你,拓展你的人脉圈。接下来小编就教大家脉脉怎么发布动态?脉脉发布动态方法。 1)打开进入应用首页后点击右上角图标。 2)接着点击,编辑动态信息后点击右上角。
标签: ASP
  问题的提出 如何实现DB2数据库信息的共享 我们组建mis系统,主要是为了信息共享,以提高办公效率,那如何实现DB2数据库的信息共享呢?随着WEB技术的日益发展,b/s模式已经被广泛地采用,但是传递单向的静态的WEB页面无法实现交互功能,企业需要动态地将信息发布到网上。这就需要我们将数据库与WEB连接起来,供用户查询,企业的主要工...
uper发布照片动态方法   1)打开uper,进入首页后点击下方的图标,弹出选项后,点击。   2)选取想要上传的照片,可多选,然后点击,进行添加态度水印或者是旅行水印后,点击。   3)继续点击,此时该照片即可保存到本地,输入自己的想要描述的文字后呢,添加频道,需要@谁就看自己的咯,最后点击按钮就可以啦...
多玩饭盒怎么发布动态   多玩饭盒发布动态教程。多玩饭盒是一款小视频社区应用,刚开始使用?小伙伴们不妨先发布一条动态,那么要怎么发布动态呢?现在小编就教大家多玩饭盒发布动态方法。 1)点击打开,然后点击右下角的; 2)点击,然后点击下方的编辑框输入动态内容,最后点击右上角的即可。

经验教程

117

收藏

56
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部