分类为 建站笔记 的存档
PHP的学习
Author: robay10 九 2007
对PHP其实我真的是从未接触过,朋友说:学学吧,挺不错的,好奇的我便真的动了心思!上网查资料,下载工具,做好了准备.感觉应该就像html一样,不会太难吧?
想借助这次shopEX商场程序的机会,正好学习下PHP,结果没有想到程序安装完了,打开安装好的php,才发现全是乱码,在google上搜了下,才知道原来是经过加密的,而且没有办法解密.本来情绪高涨的我,一下子泄了气,看来天不助我呀.算了,反正我也懒的认真学了.
测试你的虚拟主机服务器有多少个网站?
Author: robay9 九 2007
今天在网上乱逛时发现了这个网站,于是给大家介绍下:
虚拟主机的选择一直是大家头疼的事,在购买之前谁也不知道服务商提供的服务到底如何。一台真实的主机,开通太多个虚拟主机服务,即主机上绑定的站点过多,速度和稳定性肯定会受到影响。因此如果在购买虚拟主机之前能 知道机上已经开通了多少个站点,可以为我们选择虚拟主机提供很好的参考。<br/><br/>
这个网站可以测试某一IP地址或域名对应的主机上开通了多少个站点,虽然不能说百分百准确,但作为参考还是很有意义的。
购买之前可以先找虚拟主机商多要几个IP来做测试,比如我之前购买的一个虚拟主机吧,那时候买并没有测试清楚,只听服务商说他空间有多好,就购买了,同时他们也承诺说一台服务器不会超过100多用户.使用的时候真得问题多多呀,最后做了一下测试59.60.30.156出来的结果让我大吓一跳,是377个用户,应该还在不断的增加,应该他们公司就一台服务器吧,唉,就这样被骗了..
经过血的教训以后,在购买之前都会找服务商要几个IP来做测试,测试过新网互联,万网,新网,大都是在100左右的结果吧。但他们的价钱是让我觉得没有办法承受的,继续找了,后来在朋友的介绍下去了 <a href=http://www.west263.com/index.asp?ReferenceID=143500>“西部数码”</a> 找他们要来了几个IP做测试和新网差不多是100左右个,又测试了一周的主机稳定性和容错率,让我非常满意,而且公司的价钱上也很合理,于是便买了他们的双线空间,至少用到现在近一个月了,还没有让我失望,希望大家在买空间之前要测试清楚喔! <br/><br/>
<a href=http://www.myipneighbors.com/>http://www.myipneighbors.com/</a>
<br/><br/>
目前我测到的“61.236.145.81”数量是106个!</font>
LBS修改-管理员回复评论
Author: robay8 九 2007
不记得从哪里找到的代码了,但在修改完后,发现不是我想要的样子,于是按自己的要求改动了下,现在把自己的代码贴出来,供大家分享下:
打开 comment.asp,搜索到
<%if(editMark){
var arrEdit=editMark.split(“$|$”);
%>
<div class=”editmark”>[<%=lang["edited_by"]+arrEdit[0]+lang["at"]+arrEdit[1]%>]</div>
<%}%>
<%}else{%>
<div class=”hidden-note”><%=lang["hidden_comment"]%></div>
<%}%>
</div>
替换为:
<%if(editMark){
var arrEdit=editMark.split(“$|$”);
%>
<div class=”editmark”>[<%=lang["edited_by"]+arrEdit[0]+lang["at"]+arrEdit[1]%>]</div>
<%}%>
<%}else{%>
<div class=”hidden-note”><%=lang["hidden_comment"]%></div>
<%}%>
</div>
<%if(reply){%>
<div class=”commentbox-reply-title”>
<div class=”commentbox-reply-label”>[ <%=replyUsername%> ] <%=lang["reply_comment"]%> [ <%=func.getDateTimeString("YY-MM-DD hh:ii:ss", replyTime)%> ]</div>
<%if(!hidden||(theUser.id==userid&&userid!=0)||theUser.rights["view"]>2){%>
<%var strContent=ubb.toHTML(func.HTMLEncode(reply),”110011″, “”, true)%>
<div class=”commentbox-reply-content”>
<%=strContent%>
</div>
<%}else{%>
<div class=”hidden-note”><%=lang["hidden_comment"]%></div>
<%}%>
</div>
<%}%>
搜索
strTitle,strActionURL,strContent,strUBBFlags,bHidden
以上代码有两处,均替换为:
strTitle,strActionURL,strContent,strUBBFlags,bHidden,strReply,bShowReplyArea
接着打开 src_comment.asp,搜索到
“content”: comments[i]["comm_content"],
“hidden”: comments[i]["comm_hidden"],
“postTime”: new Date(Number(comments[i]["comm_posttime"])),
“ubbFlags”: comments[i]["comm_ubbflags"],
“editMark”: comments[i]["comm_editmark"],
替换为:
“content”: comments[i]["comm_content"],
“hidden”: comments[i]["comm_hidden"],
“postTime”: new Date(Number(comments[i]["comm_posttime"])),
“ubbFlags”: comments[i]["comm_ubbflags"],
“editMark”: comments[i]["comm_editmark"],
“reply”: comments[i]["comm_reply"],
“replyUsername”: comments[i]["comm_replyusername"],
“replyTime”: new Date(Number(comments[i]["comm_replytime"])),
继续搜索到 “ // Check content ” 在上一行插入:
// Workaround for content/reply swap when the user has reply rights
if(input["entry"]){
input["reply"]=input["message"];
input["message"]=input["entry"];
if(input["reply"].length>theCache.settings["maxCommentLength"]||input["reply"].length<2){
strError+=”<li>”+lang["length_invalid"]+”</li>”;
}
}
继续搜索到:
“ arrData=connBlog.query(“SELECT TOP 1 tLog.log_id,tLog.log_authorID,
tLog.log_title,tComm.comm_authorid,tComm.comm_content,
tComm.comm_ubbFlags,tComm.comm_hidden FROM [blog_Article] tLog,
[blog_Comment] tComm WHERE tLog.log_id=tComm.log_id AND tComm.comm_id=”+input["id"]); ”
替换成
“ arrData=connBlog.query(“SELECT TOP 1 tLog.log_id,tLog.log_authorID,tLog.log_title,tComm.comm_authorid,
tComm.comm_content,tComm.comm_ubbFlags,tComm.comm_reply,
tComm.comm_hidden FROM [blog_Article] tLog,[blog_Comment] tComm
WHERE tLog.log_id=tComm.log_id AND tComm.comm_id=”+input["id"]); ”
搜索到
“ outputEditComment(lang["edit_comment_on"]+”: “+arrData["log_title"], “?
act=update&id=”+input["id"], arrData["comm_content"], arrData["comm_ubbflags"],
arrData["comm_hidden"]); ”
替换成
“ outputEditComment(lang["edit_comment_on"]+”: “+arrData["log_title"], “?
act=update&id=”+input["id"], arrData["comm_content"], arrData["comm_ubbflags"],
arrData["comm_hidden"],arrData["comm_reply"],
theUser.rights["edit"]>2 ? true : false); ”
继续搜索到 “ connBlog.update(“blog_Comment”, arrUpdate, “comm_id=”+input["id"]); ”
在其上面一行插入
// If the user has reply rights
if(theUser.rights["edit"]>1){
arrUpdate["comm_reply"]=input["reply"];
arrUpdate["comm_replyUsername"]=theUser.username;
arrUpdate["comm_replyTime"]=new Date();
}
打开 article.asp 文件,搜索到
<%if(editMark){
var arrEdit=editMark.split(“$|$”);
%>
<div class=”editmark”>[<%=lang["edited_by"]+arrEdit[0]+lang["at"]+arrEdit[1]%>]</div>
<%}%>
<%}else{%>
<div class=”hidden-note”><%=lang["hidden_comment"]%></div>
<%}%>
</div>
替换为:
<%if(editMark){
var arrEdit=editMark.split(“$|$”);
%>
<div class=”editmark”>[<%=lang["edited_by"]+arrEdit[0]+lang["at"]+arrEdit[1]%>]</div>
<%}%>
<%}else{%>
<div class=”hidden-note”><%=lang["hidden_comment"]%></div>
<%}%>
</div>
<%if(reply){%>
<div class=”commentbox-reply-title”>
<div class=”commentbox-reply-label”>[ <%=replyUsername%> ] <%=lang["reply_comment"]%> [ <%=func.getDateTimeString("YY-MM-DD hh:ii:ss", replyTime)%> ]</div>
<%if(!hidden||(theUser.id==userid&&userid!=0)||theUser.rights["view"]>2){%>
<%var strContent=ubb.toHTML(func.HTMLEncode(reply),”110011″, “”, true)%>
<div class=”commentbox-reply-content”>
<%=strContent%>
</div>
<%}else{%>
<div class=”hidden-note”><%=lang["hidden_comment"]%></div>
<%}%>
</div>
<%}%>
打开 class/article.asp 文件,搜索到
this.loadComments = function(bTimeOrder, bWithTrackBack, intTrackbackPos,
intPageSize, intCurrentPage){
var sql=”SELECT 0 as type, comm_ID,comm_Content,comm_authorID,
comm_author,comm_PostTime,comm_EditMark,comm_UBBFlags,comm_Hidden,
comm_IP FROM blog_Comment WHERE log_ID=”+this.id;if(bWithTrackBack){
// Trackback Fields Mapping: comm_ID=0, comm_Content=tb_Excerpt,
comm_aut
horID=tb_ID, comm_author=tb_Title
sql+=” UNION ALL SELECT 1,0,tb_Excerpt,tb_ID,tb_Title,tb_Time,tb_URL,
tb_Blog,false,tb_IP FROM blog_Trackback WHERE log_ID=”+this.id;
}
替换成
this.loadComments = function(bTimeOrder, bWithTrackBack, intTrackbackPos, intPageSize, intCurrentPage){
var sql=”SELECT 0 as type, comm_ID,comm_Content,comm_authorID,
comm_author,comm_PostTime,comm_EditMark,comm_UBBFlags,
comm_Hidden,comm_IP,comm_reply,comm_replyUsername,
comm_replyTime FROM blog_Comment WHERE log_ID=”+this.id;if(bWithTrackBack){
// Trackback Fields Mapping: comm_ID=0, comm_Content=tb_Excerpt, comm_authorID=tb_ID, comm_author=tb_Title
sql+=” UNION ALL SELECT 1,0,tb_Excerpt,tb_ID,tb_Title,tb_Time,tb_URL,
tb_Blog,false,tb_IP,false,false,tb_Time FROM blog_Trackback WHERE log_ID=”+this.id;
}
搜索到
“ubbFlags”: tmpA[i]["comm_ubbflags"],
“hidden”: tmpA[i]["comm_hidden"],
“IP”: tmpA[i]["comm_ip"]
替换成
“ubbFlags”: tmpA[i]["comm_ubbflags"],
“hidden”: tmpA[i]["comm_hidden"],
“IP”: tmpA[i]["comm_ip"],
“reply”:tmpA[i]["comm_reply"],
“replyUsername”:tmpA[i]["comm_replyusername"],
“replyTime”: new Date(Number(tmpA[i]["comm_replytime"]))
在css中添加回复功能的样式:
.commentbox-reply-title {
border: 1px dashed #999;
margin: 2px 40px;
padding: 5px;
}
.commentbox-reply-label{
font-weight: bold;
margin-bottom: 5px;
}
.commentbox-reply-content{
font-weight: normal;
color: #000080;
font-size: 11px;
display: inline;
}
最后一步,在lang/blog.asp中添加
t["reply_comment"]=”回复于”
代码!
再刷新一下页面,在编辑评论的时候,就多了回复功能!
比原来的好看的多了。
本blog正式开通运行
Author: robay6 九 2007
今天我终于成为一名正式的站长了,哈哈. [lol] [lol]
介绍个小窍门:
刷新DNS解析缓存的具体步骤如下:
在开始>运行处输入cmd 再回车。然后在命令提示符下,键入 ipconfig /flushdns。
3. 在开始>运行处输入 ping www.sale925.cn -t 可以测试您的域名解析是否生