??xml version="1.0" encoding="utf-8" standalone="yes"?>色播久久人人爽人人爽人人片视av,国内精品久久久久国产盗摄免费观看完整版 ,国产高清精品一区http://www.aygfsteel.com/howard/所学甚,所知甚?/description>zh-cnSat, 12 Jul 2025 06:04:41 GMTSat, 12 Jul 2025 06:04:41 GMT60JWCHAT + JHB + WildFire配置说明http://www.aygfsteel.com/howard/archive/2006/11/03/78976.htmlhowardhowardFri, 03 Nov 2006 12:19:00 GMThttp://www.aygfsteel.com/howard/archive/2006/11/03/78976.htmlhttp://www.aygfsteel.com/howard/comments/78976.htmlhttp://www.aygfsteel.com/howard/archive/2006/11/03/78976.html#Feedback9http://www.aygfsteel.com/howard/comments/commentRss/78976.htmlhttp://www.aygfsteel.com/howard/services/trackbacks/78976.htmlWildFire作ؓ服务器,JWCHAT作ؓweb客户端。由?a target="_blank">jwchat只支?a target="_blank">HTTP Binding和http pulling两种方式的链接,所以需要一个提供这两种方式之一的中间gQ这里选择的是jabberHttpBindingQ原因是它是W合官方xep-1024规范的,而http pulling不是Q忘记哪里看到的了)。下面的配置也只在HTTP Binding情况下运行成功过?br />
    1Q安装WildFire。下载wildfire_3_1_1的压~包Q解压后q行bin/wildfire.exeQ在wildfire启动成功后,点击Lanche admin按钮或者直接在览器中http://yourhost:9090Q进入安装配|界面,有中文界面,Ҏ自己情况配置Q这里就不说了?br />
    2Q安装jwchatQ下载jwchat.warQ里面自带有jhbQ不q好像没有web.xml和DNSUtil.class两个文gQ可以单独下载JHB后,覆盖调jwchat.war下相应的文gQ关键是不要忘了web.xml的几行配|?br />
<servlet>
  
<servlet-name>Jabber HTTP Binding Servlet</servlet-name>
  
<servlet-class>org.jabber.JabberHTTPBind.JHBServlet</servlet-class>
</servlet>

<servlet-mapping>
  
<servlet-name>Jabber HTTP Binding Servlet</servlet-name>
  
<url-pattern>/JHB/</url-pattern>
</servlet-mapping>

    3Q配|jwchatQ打开config.jsQ进行一些修改,写的比较单了?br />
var SITENAME = "wildfire"// wildfire配置时写的域?/span>

httpbase:
"/jwchat/JHB/",  // JHB在jwchat目录?/span>
default_server: "wildfire" 

var DEFAULTRESOURCE = "wildfire";

var DEFAULTCONFERENCEROOM = "wildfire";
var DEFAULTCONFERENCESERVER = "conference.wildfire";


howard 2006-11-03 20:19 发表评论
]]>
|页中嵌入widow media player播放器插?/title><link>http://www.aygfsteel.com/howard/archive/2006/04/26/43382.html</link><dc:creator>howard</dc:creator><author>howard</author><pubDate>Wed, 26 Apr 2006 09:49:00 GMT</pubDate><guid>http://www.aygfsteel.com/howard/archive/2006/04/26/43382.html</guid><wfw:comment>http://www.aygfsteel.com/howard/comments/43382.html</wfw:comment><comments>http://www.aygfsteel.com/howard/archive/2006/04/26/43382.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.aygfsteel.com/howard/comments/commentRss/43382.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/howard/services/trackbacks/43382.html</trackback:ping><description><![CDATA[     摘要: 很简单的Q放在着方便我快速查阅。media player7.1以上的播攑֙Q?lt;OBJECT id=my_mp      style="LEFT: 0px; WIDTH: 341px; TOP: 0px; HEIGHT: 237px" height=200       width=304 classid=clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6 VI...  <a href='http://www.aygfsteel.com/howard/archive/2006/04/26/43382.html'>阅读全文</a><img src ="http://www.aygfsteel.com/howard/aggbug/43382.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/howard/" target="_blank">howard</a> 2006-04-26 17:49 <a href="http://www.aygfsteel.com/howard/archive/2006/04/26/43382.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>囄处理http://www.aygfsteel.com/howard/archive/2006/04/24/42888.htmlhowardhowardMon, 24 Apr 2006 12:36:00 GMThttp://www.aygfsteel.com/howard/archive/2006/04/24/42888.htmlhttp://www.aygfsteel.com/howard/comments/42888.htmlhttp://www.aygfsteel.com/howard/archive/2006/04/24/42888.html#Feedback0http://www.aygfsteel.com/howard/comments/commentRss/42888.htmlhttp://www.aygfsteel.com/howard/services/trackbacks/42888.html      
/*
 * 讑֮img的宽Q高
 * img 动态图片对?br /> * width 单元格宽
 * height 单元格高
 
*/

fitImageSize 
= function(img, width, height) {
    
var rate = img.width / img.height;
    
var wh = width / height;

    
if (rate > wh) {
        
if (img.width > width) {
            img.height 
= img.height * (width / img.width);
            img.width 
= width;
        }

    }

    
else {
        
if (img.height > height) {
            img.width 
= img.width * (height / img.height);
            img.height 
= height;
        }

    }

}
      
      当图片动态加载显C的时候,有一个奇怪的问题Q就是,W一ơ预览时Q图片实际大ƈ没有改变Q也是_q个函数好像无效了。预览事件代码片断如下:
for({
    
if(.) {
        
// 是否可以预览
         img.src = "url..";
            // alert(img.src);
        fitImageSize(img, view.width, view.height);
        img.align 
= "center";
        document.getElementById(id).appendChild(img);
    }

}

      而当alert的注释去掉以后,囄被正常的处理。这应该是alert的时候,jsE序被挂P而图片l在加蝲Q当alert点击以后Q图片加载已l成功,所以,囄被正处理。如果你alert的是img.widthQ你会看见信息是0。因此,我对E序再做一Ҏ动,用setInterval函数q行囄的完全加载处理?br />
for({
    
if({
        
// 是否可以预览
         img.src = "url.";
        
// alert(img.src);
        //fitImageSize(img, view.width, view.height);
        //img.align = "center";
        //document.getElementById(id).appendChild(img);
        preview_interval = window.setInterval(function() { loadingImage(img); }100);
    }

}

{...coding....}
var preview_interval;
/*
 * img 加蝲的图片对?br /> 
*/

loadingImage 
= function(img) {
    
if(img.complete){
            clearInterval(preview_interval);
            fitImageSize(img, view.width, view.height);
           img.align 
= "center";
          document.getElementById(id).appendChild(img);
    }

}

      q样一来,E序可以预览图片,q且也不再会出现W一ơ预览时撑大单元格的现象了?br />
      上面是预览一张图片的情况Q我q遇到js动态一ơ性加载多张图片的情况Q解军_法与此相伹{下面的代码是我处理多张图(2张ؓ例)的,实际上可以和上面的写在一P呵呵Q懒的,不去动它了?br />
/*
 * 加蝲相关囄
 
*/

myClass.prototype.loadAssociateImage 
= function() {
    
    
// 判断囄是否已经被加载过Q避免重复加载时不必要的消耗。这里以image数组的长?/span>
    // 作ؓ是否已经加蝲的判断?/span>
    if(this.astImage.length != 0{
          
// alert('Not reload');
            return;
        }


    
for (var i = 0; i < 2; i++{
           
this.astImage[i] = new Image();
        }

    
      
this.astImage[0].src = this.pic.pic0;
      
this.astImage[1].src = this.pic.pic1;

}



var my_interval;
/*
 * 昄
 
*/

myClass.prototype.create 
= function() {
  
this.loadAssociateImage();
  my_interval 
= window.setInterval(function () {
    
// 变量g是myClass的全局变量Q可以当作this?/span>
    var length = g.astImage.length;
    
for (var i = 0; i < length; i++{
        
if (!g.astImage[i].complete) {
            
break;
        }

        
else {
            
if (i != length -1{
                
continue;
            }

            
else {
                clearInterval(my_interval);
                
// my process now
            }

        }

    }

  
  }
10);
    
}

      补充一下对setInterval和setTimeout的说明:setInterval是让js每隔一D|间就q行某一函数一ơ,从js代码执行setInterval开始,q样直到注销QclearIntervalQ其为止QsetTimeout是在jsE序块执行终止以后,再隔一D|间调用某一函数Q该函数只调用一ơ?img src ="http://www.aygfsteel.com/howard/aggbug/42888.html" width = "1" height = "1" />

howard 2006-04-24 20:36 发表评论
]]>
在Dephi中用TStreamd数据的技?/title><link>http://www.aygfsteel.com/howard/archive/2005/07/15/7798.html</link><dc:creator>howard</dc:creator><author>howard</author><pubDate>Fri, 15 Jul 2005 12:41:00 GMT</pubDate><guid>http://www.aygfsteel.com/howard/archive/2005/07/15/7798.html</guid><wfw:comment>http://www.aygfsteel.com/howard/comments/7798.html</wfw:comment><comments>http://www.aygfsteel.com/howard/archive/2005/07/15/7798.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/howard/comments/commentRss/7798.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/howard/services/trackbacks/7798.html</trackback:ping><description><![CDATA[From: <A >http://xuguohua.diy.myrice.com/skill/34.htm</A> <BR>    在Dephi中提供了一个抽象的数据cdTStream来支持对式数据的操作。这些数据通常来自文g、数据库、内存对象、OLE对象{,TStream提供了统一、简z的Ҏ来进行数据的d。在通常情况下,我们q不需要直接用TStreamc,Ҏ式数据的d装在VCL控g的方法中。但是如果这些方法无法满x们的要求Q就需要自己手动控制数据的d? <H3><FONT color=#a30004>一?TStream的常用的Ҏ和属性:</FONT></H3><FONT color=#ffffff>----</FONT> 1. function Read(var Buffer; Count: Longint): Longint; virtual; abstract <P><FONT color=#ffffff>----</FONT> 2. function Write(const Buffer; Count: Longint): Longint; virtual; abstract; <P><FONT color=#ffffff>----</FONT> 3. function Seek(Offset: Longint; Origin: Word): Longint; virtual; abstract; <P><FONT color=#ffffff>----</FONT> 4. property Position: Longint; <P><FONT color=#ffffff>----</FONT> 5. property Size: Longint <P><FONT color=#ffffff>----</FONT> ReadQWriteQSeek都是U虚函数Q提供了数据d和定位的抽象的方法。ReadҎ数据从Stream中读到Buffer~冲ZQWrite则实现相反的操作Q返回DC实际读写数据的大小。Seek提供了在Stream中移动数据指针的Ҏ。参数Origin可以取soFromBeginningQsoFromCurrentQsoFromEnd 三个|Offset是偏U量Q返回值是当前Stream数据指针的位|? <P><FONT color=#ffffff>----</FONT> Position表示了数据指针在Stream中的位置。这个属性是可读写的Q它实际上就是通过调用SeekҎ实现的,所以实际用时使用q个属性更为方便一些。Size属性表C当前Stream的大,对于不同的StreamQ有些时候是只读的? <H3><FONT color=#a30004>二?Stream数据的读写?/FONT></H3><FONT color=#ffffff>----</FONT> 1. SaveToStream(Stream: TStream ); //类中的数据写到Stream的当前位|中 <P><FONT color=#ffffff>----</FONT> 2. LoadFromStream(Stream: TStream); //从当前位|读入Stream里的数据 <P><FONT color=#ffffff>----</FONT> 实际使用时我们基本上只要使用上面两个函数可以了? <H3><FONT color=#a30004>三?例子</FONT></H3><FONT color=#ffffff>----</FONT> TStream的承树囑֦?所C??Q实际用时比较常用的是TFileStreamQTMemoryStreamQTblobStreamQ就以这三种D一例说明具体用法? <P><FONT color=#ffffff>----</FONT> 创徏一个窗体Form1Q放|三个按钮btnReadQbtnInvertQbtnSave和一个文件打开对话框OpenDialog1以及数据控gDataSource1QTable1Qtest. <P><FONT color=#ffffff>----</FONT> 使用Dephi提供的Database Desktop创徏一个表testQ表里有一个字D域ImageQ数据库文g名存为test.db。在H体上放|一个TDatabase控gdbTestQ一个TTable控gTable1,一个DataSource控gDataSource1,一个TDBNavigator控gDBNavigator1。将dbTest与刚才Desktop创徏的数据库相连QTable1的TableName属性设为test.dbQDataSource1的DataSet属性设为Table1QDBNavigator1的DataSource属性设为DataSource1QVisibleButtons属性前四个设ؓTRUE。此外,dbtest的Connected设ؓTRUEQTable1的Active属性设为TRUEQ得数据库一开始就处于打开状态? <P><FONT color=#ffffff>----</FONT> 事g代码~写如下Q? <P><FONT color=#ffffff>----</FONT> 1. btnRead的Click事gQ这里演CZTFileStream的用法?<PRE><FONT size=2>var MS: TFileStream; begin if OpenDialog1.Execute then begin MS:=TFileStream.Create (OpenDialog1.FileName, fmOpenRead); Image1.Picture.Bitmap.LoadFromStream(MS); MS.Free; end; end;</FONT> </PRE><FONT color=#ffffff>----</FONT> 2. btnInvert的Click事gQ这里演CZTMemoryStream的用法。其中用了Invert函数Q这是一个简单的图象反色的函数Q仅对真彩图象有效)Q它q回一个指向处理过的图象数据块的指针?<PRE><FONT size=2>var M S: TMemoryStream; pImage: pointer; begin MS:=TMemoryStream.create; Image1.Picture.Bitmap.SaveToStream(MS); MS.Position:=0; pImage:=Invert(MS.Memory, MS.size); //Memory属性是指向实际内存块的指针 MS.Write(pImage^,MS.size); MS.Position:=0; //上一行代码指针Ud了Stream末尾Q所以要复位 Image1.Picture.Bitmap.LoadFromStream(MS); FreeMem(pImage); MS.Free; end;</FONT> <FONT size=2> Invert函数如下Q? function TForm1.Invert (pImage: pointer; size: Integer): pointer; var pData, pMem: PChar; i: Integer; begin pMem:=AllocMem(size); CopyMemory(pMem,pImage,size); pData:=pMem+54; for i:=0 to size-54-1 do begin pData^:=Char(not integer(pData^)); pData:=pData+1; end; Result:=pMem; end;</FONT> </PRE><FONT color=#ffffff>----</FONT> 1. btnSave的Click事gQ这里演CZTMemoryStream的另一U用法,Stream中的数据写到数据库中厅R?<PRE><FONT size=2>var MS: TMemoryStream; begin MS:=TMemoryStream.create; Image1.Picture.Bitmap.SaveToStream(MS); MS.Position:=0; Table1.Append; //在数据库中添加一条记? TBlobField(Table1.FieldbyName ('image')).LoadFromStream(MS); Table1.Post; //所作的更新写入数据? end;</FONT> </PRE><FONT color=#ffffff>----</FONT> 4. DBNavigator1的Click事gQ这里演CZTBlobStream的用法,使用了和写入时不同的Ҏ来读出数据库的图象数据?<PRE><FONT size=2>var MS: TStream; begin with Table1 do MS:=CreateBlobStream (FieldbyName('image'),bmRead); Image1.Picture.Bitmap. LoadFromStream(MS); MS.Free; end;</FONT> </PRE><FONT color=#ffffff>----</FONT> 现在你已l能够在文gQ数据库Q内存中Ld数据了。试试看吧!<img src ="http://www.aygfsteel.com/howard/aggbug/7798.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/howard/" target="_blank">howard</a> 2005-07-15 20:41 <a href="http://www.aygfsteel.com/howard/archive/2005/07/15/7798.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数据?http://www.aygfsteel.com/howard/archive/2005/07/08/7378.htmlhowardhowardFri, 08 Jul 2005 09:08:00 GMThttp://www.aygfsteel.com/howard/archive/2005/07/08/7378.htmlhttp://www.aygfsteel.com/howard/comments/7378.htmlhttp://www.aygfsteel.com/howard/archive/2005/07/08/7378.html#Feedback0http://www.aygfsteel.com/howard/comments/commentRss/7378.htmlhttp://www.aygfsteel.com/howard/services/trackbacks/7378.html    ?张表Q一张权限信息表MODULEQ员工权限表AUTHORITY。界面有2个ListBox AQBQ要求B中列出某一个员工的权限QA中列员工没有的权限。如果将B中的权限取出Qƈg句SQLq行的结果给AQ拼得SQL条g个数比较多,单点可以q样写A对应的SQLQ?BR>select  MODULE.rowid,  MODULE.*  from  MODULE, AUTHORITY
where AUTHORITY.WORKERNO(+) = '员工? 
and  MODULE.SUBSYSID =  AUTHORITY.SUBSYSID(+)
and  MODULE.MODULEID = AUTHORITY.MODULEID(+)
and  AUTHORITY.WORKERNO is null
如果权限中所有父权限Q上层权限)在A中d昄Q不考虑B中是否包含)Q可以再加一?BR>and  AUTHORITY.MODULEID(+)  !=  '父权限标识(具体的|再MODULE中区分权限父子关p)'


howard 2005-07-08 17:08 发表评论
]]>
用Toad学习Oraclehttp://www.aygfsteel.com/howard/archive/2005/07/01/6993.htmlhowardhowardFri, 01 Jul 2005 06:18:00 GMThttp://www.aygfsteel.com/howard/archive/2005/07/01/6993.htmlhttp://www.aygfsteel.com/howard/comments/6993.htmlhttp://www.aygfsteel.com/howard/archive/2005/07/01/6993.html#Feedback0http://www.aygfsteel.com/howard/comments/commentRss/6993.htmlhttp://www.aygfsteel.com/howard/services/trackbacks/6993.html 选择DataBase -> Import -> Table Data后,选定Schema和TableQ点击show data昄Table中原有的内容。点击Execute WizardQ弹出导入的向导框,Ҏ向导一路next可以了Q中间只要注意指定Excel中的列所对应的数据库的字Dc?BR>
2Q字W串的相加操作中,用符?||"
不如字DA的第一位添加一个数?Q可以这样写Q?BR>update my_table set my_table.A = '3' || my_table.A where ......

3Q很多常用的内置函数
substr()Qsubstr('abcd',0,2)的值是'ab'
trim()Q将字段内容前后的空格去?BR>length()Q查看字W串长度
to_date('2005-7-5','yyyy-mm-dd')Q根据格式,字W串型的日期转换为datecd

4QDrop表格
  在Schema Browser的Tables标签中,选择所要删除的表格,右键drop。有些情况下Q可能表D删除C回收?Recycle Bin)中,可以在Recycle Bin标签中选择表格q将他们ddrop?BR>  如何昄Recycle Bin标签Q右键点MQ意标{,比如Tables标签QConfigureQ显C出所有标{,在Recycle Bin的Visible栏中选择yes卟?img src ="http://www.aygfsteel.com/howard/aggbug/6993.html" width = "1" height = "1" />

howard 2005-07-01 14:18 发表评论
]]>
[导入]python入门Q?Q?/title><link>http://www.aygfsteel.com/howard/archive/2005/05/19/4892.html</link><dc:creator>howard</dc:creator><author>howard</author><pubDate>Thu, 19 May 2005 13:23:00 GMT</pubDate><guid>http://www.aygfsteel.com/howard/archive/2005/05/19/4892.html</guid><wfw:comment>http://www.aygfsteel.com/howard/comments/4892.html</wfw:comment><comments>http://www.aygfsteel.com/howard/archive/2005/05/19/4892.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/howard/comments/commentRss/4892.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/howard/services/trackbacks/4892.html</trackback:ping><description><![CDATA[阅读dive into python W?Q??img src ="http://blog.csdn.net/wxzh/aggbug/340319.aspx" width = "1" height = "1" /><br>文章来源:<a >http://blog.csdn.net/wxzh/archive/2005/04/08/340319.aspx</a><img src ="http://www.aygfsteel.com/howard/aggbug/4892.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/howard/" target="_blank">howard</a> 2005-05-19 21:23 <a href="http://www.aygfsteel.com/howard/archive/2005/05/19/4892.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[导入]JBoss Portal RC releasedhttp://www.aygfsteel.com/howard/archive/2005/05/13/4258.htmlhowardhowardFri, 13 May 2005 04:30:00 GMThttp://www.aygfsteel.com/howard/archive/2005/05/13/4258.htmlhttp://www.aygfsteel.com/howard/comments/4258.htmlhttp://www.aygfsteel.com/howard/archive/2005/05/13/4258.html#Feedback0http://www.aygfsteel.com/howard/comments/commentRss/4258.htmlhttp://www.aygfsteel.com/howard/services/trackbacks/4258.html文章来源:http://www.theserverside.com/news/thread.tss?thread_id=33838

howard 2005-05-13 12:30 发表评论
]]>
[导入]L Blog E序整理http://www.aygfsteel.com/howard/archive/2005/05/13/4256.htmlhowardhowardFri, 13 May 2005 04:08:00 GMThttp://www.aygfsteel.com/howard/archive/2005/05/13/4256.htmlhttp://www.aygfsteel.com/howard/comments/4256.htmlhttp://www.aygfsteel.com/howard/archive/2005/05/13/4256.html#Feedback1http://www.aygfsteel.com/howard/comments/commentRss/4256.htmlhttp://www.aygfsteel.com/howard/services/trackbacks/4256.htmlASP

Dlog: http://webdream.duoluo.com/ 国h开发的一个功能比较强大的BlogQ还有一个Dlog的修改版 http://mytz.net/blog很漂亮,增加了很多实用的功能?/P>

Misslog: http://www.misslog.com/blog 多用户blog,每个blog可以有多个用户参与创作与l护Q?/P>

Loveyuki's BLOG V1.01
Loveyuki's BLOG 是由 Loveyuki 自主开发的Z ASP+Access 的小型单用户BLOG
官方说明Q?http://www.loveyuki.com/blogview.asp?logID=68
E序下蝲Q?点击下蝲Loveyuki's BLOG
q有个它的美化版 演示:http://www.zongyz.com/blog/
下蝲 http://php.zongyz.com/loveyukiblog.rar

oblog 0.9
是多用户版本的Blog,实现了Blog的大部分功能Q其中界面部分参考了iBlog和博客堂Q编辑器部分使用了eWebEditor beta2.0免费版本?BR>演示Q?A target=_blank>http://www.oioj.net
下蝲Q?A target=_blank>http://www.qingdong.com/down/oblog.rar

Bo-Blog Q文本储存数?模板技术做的不错,可以用标{,支持RSS1.0Q?BR>http://boblog.cc.to/

Ublog: http://www.uapplication.com/demo/UblogAccess
汉化版下?http://www.9sk.net/blog/Ublog.rar

ASP.NET

iblog: http://justdn.org/product/iBlog/demo/ 冰冰工作室的作品Q?/P>

DotText: http://scottwater.com/Dottext/default.aspx

BlogX: http://www.simplegeek.com/CategoryView.aspx/BlogX

PHP

b2Q?http://www.cafelog.com 最出名的php blog,操作单,Ҏ上手
b2evolution: http://www.b2evolution.netB2多用L
wordpressQ?A target=_blank>http://www.wordpress.org 在B2的基上开发的Q添加了很多功能?BR>

pivotQ?http://www.pivotlog.net PHP+XMLQ没有用数据库Q有中文语言包,但目前不支持双字节评?/P>

nucleusQ?A target=_blank>http://www.nucleuscms.org q个也是多用P有中文语a包!

exBlogMix: http://exblog.126.com/ 国h开发的新程序,现在已经很完了?/P>

M-loggerQ?BR>http://milkliker.51j.cn/
国h开发的Q目前还比较单,多用P文本储存数据?/P>

drupalQ?http://www.drupal.org 著名的开源程序,功能非常强大Q多用户Q有多种插g和皮肤下载!


pmachine: http://www.pmachine.com q个是最标准的blogQ有中文语言包。多用户的是商业版,

serendipityQ?http://www.s9y.org 新出来的blogQ采取映,看上d像是生成html的,多用P支持多种数据库,自带了WSYISWG~辑器!对目前对中文支持的不好!

bMachineQ?A target=_blank>http://boastology.com 同时支持文本数据库和MySQL数据库,支持中文搜烦?/P>

Plog v0.3QPHP+MysqlQ?BR>官方|站 http://www.plogworld.org/
q个是我见过最强大的PHP BlogE序Q详l介l在
q里?/P>

PlainslashQ文本blogE序Q带像册Q支持rssQ分d了html模板文gQ方便修改,中文和英文两个语a包!
http://www.51zhao.com/pl/news.php?user=plainslash


myphpblog: http://www.myphpblog.org/

sunlog: http://www.sunlog.org

CGI

MTQ?http://www.movabletype.org 是我现在用的,世界上用h多的blogE序Q自动生成htmlQ后~可以自己讄Q支持文本数据库和mysqlQmssql{!

GreymatterQ是一个类?Movable Type 的BlogE序Q相兛_容可以参?A >q里?BR>
原文地址: http://www.laogui.com/blog/mt-tb.cgi/4


文章来源:http://www.cnblogs.com/dudu/articles/8862.html

howard 2005-05-13 12:08 发表评论
]]>
վ֩ģ壺 ¡| | ԭƽ| | | | | | | ƽ| | | | ؿ˹| | ״| | ƺ| | Ͻ| ɽ| | | | | Դ| | ϻ| ܱ| ƽɽ| ƽ| ʡ| | | | | ·| | | ƽ| ɽ|