分类目录归档:Div+CSS

域名统计筛选程序,生成Excel文件(.xls)或HTML网页文件(.html)

朋友手中有上千个域名,现在cn域名续费涨价了,准备抛弃一些。让我帮忙写个小程序来筛选一下,看看那个有留下的价值。当时我放出大话,20分钟搞定。最初设想的是生成Excel文件,通过Excel中的筛选来统计。

代码如下(附件包中的excel.vbs):

'域名统计程序,生成excel结果
'通过VBS获取当前目录,替代ASP中的Server.Mappath
Function Mappath(v)
 Mappath=fso.getAbsolutePathName(v)
End Function
 
'写得一个函数,用于判断字符串中是否含有数字。
Function iszajiao(v)
	for i=1 to len(v)
		if isnumeric(mid(v,i,1)) then
			iszajiao=1
			exit for
		end if
	next
End Function
 
'创建一个FSO对象
Set fso=CreateObject("Scripting.FileSystemObject")
 
'判断是否有生成的Excel结果ok.xls,如果有,则删除
if fso.fileexists(mappath("ok.xls")) then fso.getfile(mappath("ok.xls")).delete
 
'创建一个ok.xls
set fto=fso.createtextfile(mappath("ok.xls"),2)
wscript.echo "吴哥哥,请稍等,我正在为您工作中。。。"
fto.writeline "域名	后缀	位数	类型"
 
'寻找当前目录中的所有txt文件,如果有则依次打开
for each file in fso.getfolder(mappath(".")).files
	if Lcase(fso.getExtensionName(file))="txt" then
		set db=fso.opentextfile(file,1)
 
		'如果不是在txt文件的结尾,则循环读取
		do while not db.atendofstream
			rs=db.readline
 
			'获取域名的位数,即第一次出现.的位置-1
			ws=cint(instr(rs,".")-1)
 
			'防止本行数据为空行
			if ws>=1 then
				rsi=rsi+1
 
				'获取域名
				ym=left(rs,ws)
 
				'获取域名后缀
				hz=replace(rs,ym&".","")
 
				'分析域名类型,如果ym为数字则为数字
				if isnumeric(ym) then
					lx="数字"
				'否则,如果出现数字则为杂交
				elseif iszajiao(ym)=1 then
					lx="杂交"
				'其他类型就剩下字母了
				else
					lx="字母"
				end if
				'输出
				fto.writeline ym&"	"&hz&"	"&ws&"	"&lx
			end if
		loop
	end if
next
fto.close
set fto=nothing
msgbox "吴哥哥,我帮你完成工作了,怎么谢我呢?请我吃MM吧"

正准备邀功请赏的时候,朋友竟然说没用过Excel,狂吐血,并且还不想用数据库。这儿就有点复杂了,初步设想生成HTML文件,然后把数据保存到数组中,根据Select的选项来现在最终结果。

我是从两个方便考虑的,生成网页部分由Javascript控制,这些Javascript最终代码由VBScript来生成。

思路明确了,首先来考虑由Javascript控制的网页。演示页面:http://www.miaoqiyuan.cn/products/js-array-ymtj.html

<html><head><title>生成结果</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script type="text/javascript">
var rs=new Array();
rs[1]=Array('sjtian','cn',6,'字母');
rs[2]=Array('zhaozhetao','cn',10,'字母');
rs[3]=Array('qiangjiaoshu','cn',12,'字母');
rs[4]=Array('bszange','cn',7,'字母');
rs[5]=Array('6688fafa','cn',8,'杂交');
rs[6]=Array('xswjm','cn',5,'字母');
rs[7]=Array('fpjtw','cn',5,'字母');
rs[8]=Array('jssj','js.cn',4,'字母');
rs[9]=Array('chengzhun','com',9,'字母');
rs[10]=Array('yfxqqiu','cn',7,'字母');
</script>
<script type="text/javascript">
var __res,__lx,__ws,__hz,__j,__isrun,__rscount=0;
var __mqy=function(){
	//判断是否在进程中,如果在进程中则退成,否则将进程设为活动
	if(__isrun==1)
		return eval(__sorry("还在运算中,你想累死你的爱机?"));
	else
		__isrun=1;
	//和朋友开个玩笑
	var __mm=confirm("吴哥哥,你确定请我吃MM吗?");
	if(__mm==false)
		return eval(__sorry("好,你不请我吃,那我不工作了"));
	if(typeof(__res)!="object")
		__res=document.getElementById("__res");
 
	//改变字体颜色,背景,提示现在程序正在执行中。
	__res.style.background="#FF0";
	__res.style.color="#F00";
	__res.innerHTML="<p>谢谢吴哥哥请我吃MM,正在生成中,请稍后。。。</p><p>因为数据过多,程序可能执行有点慢,请耐心等候</p>";
 
	//一秒之后执行程序,这样做是因为有时候DOM修改还没有生效,如果数据过多,进入假死状态,用户以为真死机了
	//给程序一秒中的反应时间
	setTimeout("__run()",1000);
}
 
//主要查询程序就是它啦
var __run=function(){
	//获取各个Select的值
	__ws=document.getElementById("_ws").value;
	__hz=document.getElementById("_hz").value;
	__lx=document.getElementById("_lx").value;
	__j="";
	for(i=1;i<rs .length;i++){
		//设置输出HTML
		var _isok="<li>"+rs[i][0]+"."+rs[i][1]+"";
		//只有不符合一下条件的才是符合我们要筛选的结果
		//虽然只有一个if,大家可以仔细看看,包含了十几种情况
		if(__ws!="all"&&__ws!=rs[i][2]||__hz!="all"&&__hz!=rs[i][1]||__lx!="all"&&__lx!=rs[i][3])
			_isok="";
		else
			//如果符合条件,符合条件的结果数加一
			__rscount++;
		//将判读结果附加到__j
		__j+=_isok;
	}
	if(__j=="")
		//如果__j没有改变,说明没有符合的条件记录
		__res.innerHTML="<p>没有找到任何记录</p>";
	else
		//输出符合条件的记录数及筛选结果
		__res.innerHTML="<p class=c>共找到"+__rscount+"条记录。</p>"+__j;
	__res.style.background="#0F0";
	__res.style.color="#000";
	//修改运行状态为未运行
	__isrun=0;
	//修改符合条件记录数为0,供下次查询使用
	__rscount=0;
}
var __sorry=function(t){
	alert(t);
}
</rs></script>
<style type="text/css">
div{width:800px;background:#CCC;border:solid 2px #666;margin-top:10px;padding:10px;}
div p.c{color:#F00;background:#FF0;border:solid #333 2px;padding:5px;}
</style>
</head>
<body>
<div>
按长度筛选:
<select id="_ws">
	<option value="all">不区分长度</option>
	<option value="1">1</option>
	<option value="2">2</option>
	<option value="3">3</option>
	<option value="4">4</option>
	<option value="5">5</option>
	<option value="6">6</option>
	<option value="7">7</option>
	<option value="8">8</option>
</select>
按类型筛选:
<select id="_lx">
	<option value="all">不区分类型</option>
	<option value="字母">字母(abc.com)</option>
	<option value="数字">数字(123.com)</option>
	<option value="杂交">杂交(f8.com)</option>
</select>
按后缀筛选:
<select id="_hz">
	<option value="all">不区分后缀</option>
	<option value="org">org</option>
	<option value="com">com</option>
	<option value="net">net</option>
	<option value="cn">cn</option>
</select>
<input type="button" onclick="__mqy();" value="立即筛选" />
</div>
<div id="__res">
	吴哥哥,你在上边选择你的条件
</div>
</body>
</html>

网页写好了,接下来要做的就是让vbscript脚本读取当前目录中所有的txt文件,来生成html
代码如下(附件包中的js.vbs):

'域名统计程序,生成html结果
'通过VBS获取当前目录,替代ASP中的Server.Mappath
Function Mappath(v)
 Mappath=fso.getAbsolutePathName(v)
End Function
 
'写得一个函数,用于判断字符串中是否含有数字。
Function iszajiao(v)
	for i=1 to len(v)
		if isnumeric(mid(v,i,1)) then
			iszajiao=1
			exit for
		end if
	next
End Function
 
'创建一个FSO对象
Set fso=CreateObject("Scripting.FileSystemObject")
 
'判断是否有生成的结果ok.html,如果有,则删除
if fso.fileexists(mappath("ok.html")) then fso.getfile(mappath("ok.html")).delete
 
'创建一个ok.html
set fto=fso.createtextfile(mappath("ok.html"),2)
wscript.echo "吴哥哥,请稍等,我正在为您工作中。。。" 
scrt="<html><head><title>运行结果</title><meta http-equiv='Content-Type' content='t"
scrt=scrt+"ext/html; charset=gb2312' /><script type='text/javascript'>"
fto.writeline scrt
fto.writeline "var rs=new Array();"
 
'寻找当前目录中的所有txt文件,如果有则依次打开
for each file in fso.getfolder(mappath(".")).files
	if Lcase(fso.getExtensionName(file))="txt" then
		set db=fso.opentextfile(file,1)
 
		'如果不是在txt文件的结尾,则循环读取
		do while not db.atendofstream
			rs=db.readline
 
			'获取域名的位数,即第一次出现.的位置-1
			ws=cint(instr(rs,".")-1)
 
			'防止本行数据为空行
			if ws>=1 then
				rsi=rsi+1
 
				'获取域名
				ym=left(rs,ws)
				if wss="" then wss=ws
				for each wsi in split(wss,"|")
					if cint(wsi)=ws then
						wsu=cint(ws)
						exit for
					end if
				next
				if wsu<>ws then
					wss=wss&"|"&ws
				end if
 
				'获取域名后缀
				hz=replace(rs,ym&".","")
				if hzs="" then hzs=hz
				for each hzi in split(hzs,"|")
					if hzi=hz then
						hzu=hz
						exit for
					end if
				next
				if hzu<>hz then
					hzs=hzs&"|"&hz
				end if
 
				'分析域名类型,如果ym为数字则为数字
				if isnumeric(ym) then
					lx="数字"
				'否则,如果出现数字则为杂交
				elseif iszajiao(ym)=1 then
					lx="杂交"
				'其他类型就剩下字母了
				else
					lx="字母"
				end if
				fto.writeline "rs["&rsi&"]=Array('"&ym&"','"&hz&"',"&ws&",'"&lx&"');"
			end if
		loop
	end if
next
scrt="</script><script type='text/javascript'>var __res,__lx,__ws,__hz,__j,__isrun,"
scrt=scrt+"__rscount=0;var __mqy=function(){if(__isrun==1)return eval(__sorry('还在"
scrt=scrt+"运算中,你想累死你的爱机?'));else __isrun=1;var __mm=confirm('吴哥哥,你"
scrt=scrt+"确定请我吃MM吗?');if(__mm==false)return eval(__sorry('好,你不请我吃,那"
scrt=scrt+"我不工作了'));if(typeof(__res)!='object')__res=document.getElementById('__"
scrt=scrt+"res');__res.style.background='#FF0';__res.style.color='#F00';__res.innerHTM"
scrt=scrt+"L='<p>谢谢吴哥哥请我吃MM,正在生成中,请稍后。。。</p><p>因为数据过多,程序"
scrt=scrt+"可能执行有点慢,请耐心等候</p>';setTimeout('__run()',1000);};var __run=funct"
scrt=scrt+"ion(){__ws=document.getElementById('_ws').value;__hz=document.getElementById"
scrt=scrt+"('_hz').value;__lx=document.getElementById('_lx').value;__j='';for(i=1;i<rs ."
scrt=scrt+"length;i++){var _isok='<li>'+rs[i][0]+'.'+rs[i][1]+'';if(__ws!='all'&&__"
scrt=scrt+"ws!=rs[i][2]||__hz!='all'&&__hz!=rs[i][1]||__lx!='all'&&__lx!=rs[i][3])_isok=''"
scrt=scrt+";else __rscount++;__j+=_isok;}if(__j=='')__res.innerHTML='<p>没有找到任何记录< "
scrt=scrt+"/p>';else __res.innerHTML='</p><p class=c>共找到'+__rscount+'条记录。</p>'+__j;__res"
scrt=scrt+".style.background='#0F0';__res.style.color='#000';__isrun=0;__rscount=0;};var __so"
scrt=scrt+"rry=function(t){alert(t);}</rs></script><style type='text/css'>div{width:800px;backgroun"
scrt=scrt+"d:#CCC;border:solid 2px #666;margin-top:10px;padding:10px;}div p.c{color:#F00;backg"
scrt=scrt+"round:#FF0;border:solid #333 2px;padding:5px;}</style></head><body><div>按长度筛选:"
scrt=scrt+"<select id='_ws'><option value='all'>不区分长度</option>"
fto.writeline scrt
scrt=""
for each wsi in split(wss,"|")
	fto.writeline "<option value='"&wsi&"'>"&wsi&"</option>"
next
scrt="</select> 按类型筛选<select id='_lx'><option value='all'> 不区分类型</option><option valu"
scrt=scrt+"e='字母'>字母(abc.com)</option><option value='数字'>数字(123.com)</option><option "
scrt=scrt+"value='杂交'>杂交(f8.com)</option></select> 按后缀筛选<select id='_hz'><option value"
scrt=scrt+"='all'>不区分后缀</option>"
fto.writeline scrt
scrt=""
for each hzi in split(hzs,"|")
	fto.writeline "<option value='"&hzi&"'>"&hzi&"</option>"
next
scrt="</select><input type='button' onclick='__mqy();' value='立即筛选' /></div><div id='__res'>"
scrt=scrt+"吴哥哥,你在上边选择你的条</div></body></html>"
fto.writeline scrt
fto.close
set fto=nothing
msgbox "吴哥哥,我帮你完成工作了,怎么谢我呢?请我吃MM吧"

忙了大半个晚上终于搞定了。哈哈,启源果然是天才(YY一下)。

本程序可以智能的读取程序所在目录中的所有txt文件,数据格式为每行一个域名。

现在cn域名续费涨价了,如果你手上也有很多域名,不妨用本程序来筛选一下,我已经打包成rar文件,供大家下载。
下载地址:http://www.miaoqiyuan.cn/products/yuming-tj-to-excel-html-xls.rar

转帖请注明出处:域名统计筛选程序,生成Excel文件(.xls)或HTML网页文件(.html)(http://www.miaoqiyuan.cn/p/yuming-tj-to-excel-html-xls)

css实现层叠背景图实现多个图层叠加

刚写个一篇激活Vista的烂文,现在在此烂文截图的基础上扩展一下,Vista的界面就是漂亮,特别是窗口方面,太漂亮了。

实用该图作为背景,来写个有Vista边框的框架吧~后边的窗口直接用Iframe,前边用div,分三层,背景,iframe,前端DIV,因为实在vista中的截图,现在在win2003下,不能截图,仅有一张背景图,所以要div层叠在iframe上,而且还要实用背景图,有点难度,不过这样正好可以来练习练习CSS,好久没写了

不想写了,代码写了两三个小时,效果如下:http://www.miaoqiyuan.cn/Products/vista-bg-test.htm

直接发代码了

 

<style type="text/css">
body{background:url('vista.jpg');background-repeat:no-repeat;padding:0px;margin:0px;overflow:hidden}
div{position:absolute;z-index:999;margin-left:472px;margin-top:264px;margin-right:0px;width:534px;height:341px;background:url('vista.jpg') #333;background-position:-472px -264px;background-repeat:no-repeat;}
a{border:#FEE solid 1px;display:block;background:#F8F8F8;height:40px;margin-left:46px;margin-top:8px;line-height:40px;font-size:24px;font-family:黑体;text-indent:2em;color:#8B859F;text-decoration:none;font-weight:800}
a.s1{height:55px;line-height:55px;margin-top:118px;}
a strong{font-size:18px;font-weight:400;color:#999}
a span{display:none}
a:hover{color:#000;border:#666 solid 1px;}
a:hover strong{display:none;}
a:hover span{display:inline;padding-left:20px;font-size:16px;color:#F00;font-weight:400;font-family:宋体}
iframe{margin-left:102px;margin-top:110px;width:782px;border:none;height:497px;}
input{margin:0px;margin-top:5px;height:25px;font-size:22px;}
</style>
<body>
<div>
<a class="s1" href="About:电影@远通" onclick="this.href='ftp://www.yuantong'" onblur="this.href='About:电影@远通'" target="_blank">电影<strong>(Moives)</strong><span>点击打开电影库,可以通过迅雷下载哦</span></a>
<a href="About:软件@远通" onclick="this.href='ftp://www.yuantong/install'"  onblur="this.href='About:软件@远通'"  target="_blank">软件<strong>(Softwares)</strong><span>点击打开软件库,各类软件应有尽有</span></a>
<a href="About:资询@远通" onclick="document.getElementById('locaweb').src='http://miaoqiyuan.cn';return false;">主页<strong>(How to use?)</strong><span>点击访问飞猫主要寻找帮助信息</span></a>
<a href="About:上网@远通" onclick="return false;">上网<strong>(Internet)</strong><span><input id="url" value="请输入网址或关键字" size="28" onmouseout="this.blur();if(this.value=='')this.value='请输入网址或关键字';" onclick="this.value=''" /><input type="button" value="Go" onclick="document.getElementById('locaweb').src='loadweb.html?url='+document.getElementById('url').value;" /></span></a>
</div>
<iframe src="http://www.miaoqiyuan.cn" id="locaweb" ></iframe>
</body>

Workeasy-简单客户网站信息管理系统

随着业务量的增多,客户信息管理又是一个问题,而且客户的资料、画册已经堆积如山了,找一个客户的资料太难了,于是我想到了给客户信息编号,如9月21日跑来的就是9.21-1,9.21-2,把客户在本站的文件名,密码都记录下来。。。噩梦又出现了,今天客户改这,明天改那,记事本已将化的不成样子了

为何不用简单的网站来管理呢?在网上找OA系统?这个太大材小用了吧~因为自己本身就是程序员,还是自己写个吧~
下载地址:http://www.miaoqiyuan.cn/products/sitemanger.rar

通过本程序,可以方便的列出需要拍照的,需要传图的,没有简介的,需要客户确认的,已经完成的单子的信息~

大大的放百年了我们的管理,值得一提的(我最自豪的)是直接点击公司名称即可选中(边框为蓝色),再点取消,通过点击上边的“修改为..”可以批量修改选中的Case的状态(隐藏了checkbox,点击设checkbox设为Ture),不是通过ID来修改,项目可以为任意多,而且可以通过全选,反选来快速选择。

运用了CSS+Javascript+ASP(VBScript),在workeasy系类中我最喜欢的一个工具。

SiteMange 点击放大