¡¡¡¡<%
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| ±äÁ¿ÉèÖÃ
¡¡¡¡'+-----------------------------------+
¡¡¡¡cTitle = "ËùÓÐÉÏ´«Í¼Æ¬(×¢:ÒÔÏÂΪͼƬÎļþ¼ÐÏÂÃæËùÓÐͼƬ£¬²¢·ÇÈ«²¿ÎªÓÐЧͼƬ!)" 'Ãû×Ö
¡¡¡¡cPicType = "jpeg,jpg,gif,png,bmp" 'ͼƬÀàÐÍ (ʹÓÃ","½«Í¼Æ¬¸ñʽ·Ö¿ª)
¡¡¡¡cHeight = 120 'Ëõͼ¸ß¶È
¡¡¡¡cWidth = 120 'Ëõͼ¿í¶È
¡¡¡¡cEachLineMax = 5 'ÿÐÐÏÔʾͼƬÊý
¡¡¡¡cEachPageMax = 20 'ÿҳÏÔʾͼƬÊýÄ¿
¡¡¡¡pic_path="/uploadpic/" 'É趨ͼƬËùÔÚ·¾¶
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| ¶¨Ò庯Êý
¡¡¡¡'+-----------------------------------+
¡¡¡¡Function getExt(name)
¡¡¡¡getExt = right(name, 3)
¡¡¡¡End Function
¡¡¡¡Function isPIC(fileName, picType)
¡¡¡¡ext = getExt(fileName)
¡¡¡¡isPIC = False
¡¡¡¡typeList = split(picType, ",")
¡¡¡¡For ii = LBound(typeList) To UBound(typeList)
¡¡¡¡If UCase(ext) = UCase(typeList(ii)) Then
¡¡¡¡isPIC = True
¡¡¡¡Exit For
¡¡¡¡End If
¡¡¡¡Next
¡¡¡¡End Function
¡¡¡¡Function pageBar(page, pageTotal)
¡¡¡¡response.Write "[ <A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=" & (page - 1) & " title=ÉÏÒ»Ò³>ÉÏÒ»Ò³</A> ] "
¡¡¡¡response.Write "<A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=1 title=Ê×Ò³><< </A>"
¡¡¡¡i = pageStart
¡¡¡¡Do while i < page
¡¡¡¡response.Write "<A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=" & i & " title=""µÚ " & i & " Ò³"">[" & i & "]</A> "
¡¡¡¡i = i + 1
¡¡¡¡Loop
¡¡¡¡response.Write "[<FONT COLOR=red><B>" & page & "</B></FONT>]"
¡¡¡¡i = pageMiddle
¡¡¡¡Do while i <= pageEnd
¡¡¡¡response.Write "<A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=" & i & " title=""µÚ " & i & " Ò³"">[" & i & "]</A> "
¡¡¡¡i = i + 1
¡¡¡¡Loop
¡¡¡¡response.Write "...<A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=" & pageTotal & " title=""µÚ " & pageTotal & " Ò³"">[" & pageTotal & "]</A>"
¡¡¡¡response.Write " <A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=" & pageTotal & " title=βҳ>>></A>"
¡¡¡¡response.Write "[ <A HREF="&Request.ServerVariables("SCRIPT_NAME")&"?page=" & (page + 1) & " title=ÏÂÒ»Ò³>ÏÂÒ»Ò³</A> ] ¹² <B><FONT COLOR=red>" & pageTotal & "</FONT></B> Ò³ µ±Ç°ËùÔÚµÚ <B><FONT COLOR=red>" & page & "</FONT></B> Ò³ ͼƬÊý : <B><FONT COLOR=red>" & picTotal & "</FONT></B>"
¡¡¡¡End Function
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| ȡͼƬ³ß´çÀà
¡¡¡¡'+-----------------------------------+
¡¡¡¡Class possible
¡¡¡¡dim aso
¡¡¡¡Private Sub Class_Initialize
¡¡¡¡set aso=CreateObject("Adodb.Stream")
¡¡¡¡aso.Mode=3
¡¡¡¡aso.Type=1
¡¡¡¡aso.Open
¡¡¡¡End Sub
¡¡¡¡Private Sub Class_Terminate
¡¡¡¡set aso=nothing
¡¡¡¡End Sub
¡¡¡¡Private Function Bin2Str(Bin)
¡¡¡¡Dim K, Str
¡¡¡¡For K=1 to LenB(Bin)
¡¡¡¡clow=MidB(Bin,K,1)
¡¡¡¡if ASCB(clow)<128 then
¡¡¡¡Str = Str & Chr(ASCB(clow))
¡¡¡¡else
¡¡¡¡K=K+1
¡¡¡¡if K <= LenB(Bin) then Str = Str & Chr(ASCW(MidB(Bin,K,1)&clow))
¡¡¡¡end if
¡¡¡¡Next
¡¡¡¡Bin2Str = Str
¡¡¡¡End Function
¡¡¡¡Private Function Num2Str(num,base,lens)
¡¡¡¡dim ret
¡¡¡¡ret = ""
¡¡¡¡while(num>=base)
¡¡¡¡ret = (num mod base) & ret
¡¡¡¡num = (num - num mod base)/base
¡¡¡¡wend
¡¡¡¡Num2Str = right(string(lens,"0") & num & ret,lens)
¡¡¡¡End Function
¡¡¡¡Private Function Str2Num(str,base)
¡¡¡¡dim ret
¡¡¡¡ret = 0
¡¡¡¡for k=1 to len(str)
¡¡¡¡ret = ret *base + cint(mid(str,k,1))
¡¡¡¡next
¡¡¡¡Str2Num=ret
¡¡¡¡End Function
¡¡¡¡Private Function BinVal(bin)
¡¡¡¡dim ret
¡¡¡¡ret = 0
¡¡¡¡for k = lenb(bin) to 1 step -1
¡¡¡¡ret = ret *256 + ascb(midb(bin,k,1))
¡¡¡¡next
¡¡¡¡BinVal=ret
¡¡¡¡End Function
¡¡¡¡Private Function BinVal2(bin)
¡¡¡¡dim ret
¡¡¡¡ret = 0
¡¡¡¡for k = 1 to lenb(bin)
¡¡¡¡ret = ret *256 + ascb(midb(bin,k,1))
¡¡¡¡next
¡¡¡¡BinVal2=ret
¡¡¡¡End Function
¡¡¡¡Private Function getImageSize(filespec)
¡¡¡¡dim ret(3)
¡¡¡¡aso.LoadFromFile(filespec)
¡¡¡¡bFlag=aso.read(3)
¡¡¡¡select case hex(binVal(bFlag))
¡¡¡¡case "4E5089":
¡¡¡¡aso.read(15)
¡¡¡¡ret(0)="PNG"
¡¡¡¡ret(1)=BinVal2(aso.read(2))
¡¡¡¡aso.read(2)
¡¡¡¡ret(2)=BinVal2(aso.read(2))
¡¡¡¡case "464947":
¡¡¡¡aso.read(3)
¡¡¡¡ret(0)="GIF"
¡¡¡¡ret(1)=BinVal(aso.read(2))
¡¡¡¡ret(2)=BinVal(aso.read(2))
¡¡¡¡case "535746":
¡¡¡¡aso.read(5)
¡¡¡¡binData=aso.Read(1)
¡¡¡¡sConv=Num2Str(ascb(binData),2 ,8)
¡¡¡¡nBits=Str2Num(left(sConv,5),2)
¡¡¡¡sConv=mid(sConv,6)
¡¡¡¡while(len(sConv)<nBits*4)
¡¡¡¡binData=aso.Read(1)
¡¡¡¡sConv=sConv&Num2Str(ascb(binData),2 ,8)
¡¡¡¡wend
¡¡¡¡ret(0)="SWF"
¡¡¡¡ret(1)=int(abs(Str2Num(mid(sConv,1*nBits+1,nBits),2)-Str2Num(mid(sConv,0*nBits+1,nBits),2))/20)
¡¡¡¡ret(2)=int(abs(Str2Num(mid(sConv,3*nBits+1,nBits),2)-Str2Num(mid(sConv,2*nBits+1,nBits),2))/20)
¡¡¡¡case "FFD8FF":
¡¡¡¡do
¡¡¡¡do: p1=binVal(aso.Read(1)): loop while p1=255 and not aso.EOS
¡¡¡¡if p1>191 and p1<196 then exit do else aso.read(binval2(aso.Read(2))-2)
¡¡¡¡do:p1=binVal(aso.Read(1)):loop while p1<255 and not aso.EOS
¡¡¡¡loop while true
¡¡¡¡aso.Read(3)
¡¡¡¡ret(0)="JPG"
¡¡¡¡ret(2)=binval2(aso.Read(2))
¡¡¡¡ret(1)=binval2(aso.Read(2))
¡¡¡¡case else:
¡¡¡¡if left(Bin2Str(bFlag),2)="BM" then
¡¡¡¡aso.Read(15)
¡¡¡¡ret(0)="BMP"
¡¡¡¡ret(1)=binval(aso.Read(4))
¡¡¡¡ret(2)=binval(aso.Read(4))
¡¡¡¡else
¡¡¡¡ret(0)=""
¡¡¡¡end if
¡¡¡¡end select
¡¡¡¡ret(3)="width=""" & ret(1) &""" height=""" & ret(2) &""""
¡¡¡¡getimagesize=ret
¡¡¡¡End Function
¡¡¡¡Function readX(pic_path)
¡¡¡¡Set fso1 = server.CreateObject("Scripting.FileSystemObject")
¡¡¡¡Set f1 = fso1.GetFile(pic_path)
¡¡¡¡ext=fso1.GetExtensionName("."&pic_path)
¡¡¡¡select case UCase(ext)
¡¡¡¡case "GIF","BMP","JPG","PNG":
¡¡¡¡arr=getImageSize(f1.path)
¡¡¡¡readX = arr(1)
¡¡¡¡case "swf"
¡¡¡¡arr=pp.getimagesize(f1.path)
¡¡¡¡readX = arr(1)
¡¡¡¡end select
¡¡¡¡Set f1=nothing
¡¡¡¡Set fso1=nothing
¡¡¡¡End Function
¡¡¡¡Function readY(pic_path)
¡¡¡¡Set fso1 = server.CreateObject("Scripting.FileSystemObject")
¡¡¡¡Set f1 = fso1.GetFile(pic_path)
¡¡¡¡ext=fso1.GetExtensionName("."&pic_path)
¡¡¡¡select case UCase(ext)
¡¡¡¡case "GIF","BMP","JPG","PNG":
¡¡¡¡arr=getImageSize(f1.path)
¡¡¡¡readY = arr(2)
¡¡¡¡case "swf"
¡¡¡¡arr=pp.getimagesize(f1.path)
¡¡¡¡readY = arr(2)
¡¡¡¡end select
¡¡¡¡Set f1=nothing
¡¡¡¡Set fso1=nothing
¡¡¡¡End Function
¡¡¡¡End Class
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| Êý¾Ý´¦Àí
¡¡¡¡'+-----------------------------------+
¡¡¡¡Dim fileArray()
¡¡¡¡reDim fileArray(0)
¡¡¡¡Set fileObj = Server.CreateObject("Scripting.FileSystemObject")
¡¡¡¡Set folderObj = fileObj.GetFolder(server.MapPath("."&pic_path))
¡¡¡¡i = 0
¡¡¡¡For Each file in folderObj.Files
¡¡¡¡If isPIC(file.Name, cPicType) Then
¡¡¡¡fileArray(i) = file.Name
¡¡¡¡i = i + 1
¡¡¡¡reDim Preserve fileArray(i)
¡¡¡¡End If
¡¡¡¡Next
¡¡¡¡Set FileObj = Nothing
¡¡¡¡Set FolderObj = Nothing
¡¡¡¡picTotal = UBound(fileArray)
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| ·ÖÒ³´¦Àí
¡¡¡¡'+-----------------------------------+
¡¡¡¡page = int(Request.QueryString("page"))
¡¡¡¡pageTotal = -(int(-(picTotal/cEachPageMax)))
¡¡¡¡If page = Empty or page < 0 Then page = 1
¡¡¡¡If page > pageTotal Then page = pageTotal
¡¡¡¡offset = cEachPageMax * page
¡¡¡¡start = offset - cEachPageMax
¡¡¡¡If start < 0 Then start = 0
¡¡¡¡If offset > picTotal Then offset = picTotal
¡¡¡¡pageStart = page - cEachPageMax
¡¡¡¡If pageStart <= 0 Then pageStart = 1
¡¡¡¡pageMiddle = page + 1
¡¡¡¡pageEnd = pageMiddle + cEachPageMax
¡¡¡¡If page <= cEachPageMax Then pageEnd = cEachPageMax * 2
¡¡¡¡If pageEnd > pageTotal Then pageEnd = pageTotal
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| Êä³ö²¿·Ö
¡¡¡¡'+-----------------------------------+
¡¡¡¡%>
¡¡¡¡<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
¡¡¡¡<html>
¡¡¡¡<head>
¡¡¡¡<title> <%=cTitle%> </title>
¡¡¡¡<style type='text/css'>
¡¡¡¡a:link, a:visited, a:active { text-decoration: none; color: #000 }
¡¡¡¡a:hover { color: orangered; text-decoration:none }
¡¡¡¡BODY { scrollbar-face-color: #DEE3E7; scrollbar-highlight-color: #FFFFFF; scrollbar-shadow-color: #DEE3E7; scrollbar-3dlight-color: #D1D7DC; scrollbar-arrow-color: #006699; scrollbar-track-color: #EFEFEF; scrollbar-darkshadow-color: #98AAB1; font: 12px Verdana; color:#333333; font-family: Tahoma,Verdana, Tahoma, Arial,Helvetica, sans-serif; font-size: 12px; color: #000; margin:0px 12px 0px 12px;background-color:#FFF }
¡¡¡¡TD {font: 12px Verdana; color:#333333; font-family: Tahoma,Verdana, Tahoma, Arial,Helvetica, sans-serif; font-size: 12px; color: #000; };
¡¡¡¡</style>
¡¡¡¡</head>
¡¡¡¡<body topmargin="0" leftmargin="0">
¡¡¡¡<script>
¡¡¡¡tPopWait=20;
¡¡¡¡showPopStep=10;
¡¡¡¡popOpacity=85;
¡¡¡¡sPop=null;
¡¡¡¡curShow=null;
¡¡¡¡tFadeOut=null;
¡¡¡¡tFadeIn=null;
¡¡¡¡tFadeWaiting=null;
¡¡¡¡document.write("<style type='text/css'id='defaultPopStyle'>");
¡¡¡¡document.write(".cPopText { font-family: Verdana, Tahoma; background-color: #F7F7F7; border: 1px #000000 solid; font-size: 11px; padding-right: 4px; padding-left: 4px; height: 20px; padding-top: 2px; padding-bottom: 2px; filter: Alpha(Opacity=0)}");
¡¡¡¡document.write("</style>");
¡¡¡¡document.write("<div id='popLayer' style='position:absolute;z-index:500;' class='cPopText'></div>");
¡¡¡¡function showPopupText(){
¡¡¡¡var o=event.srcElement;
¡¡¡¡MouseX=event.x;
¡¡¡¡MouseY=event.y;
¡¡¡¡if(o.alt!=null && o.alt!="") { o.pop=o.alt;o.alt="" }
¡¡¡¡if(o.title!=null && o.title!=""){ o.pop=o.title;o.title="" }
¡¡¡¡if(o.pop) { o.pop=o.pop.replace("\n","<br>"); o.pop=o.pop.replace("\n","<br>"); }
¡¡¡¡if(o.pop!=sPop) {
¡¡¡¡sPop=o.pop;
¡¡¡¡clearTimeout(curShow);
¡¡¡¡clearTimeout(tFadeOut);
¡¡¡¡clearTimeout(tFadeIn);
¡¡¡¡clearTimeout(tFadeWaiting);
¡¡¡¡if(sPop==null || sPop=="") {
¡¡¡¡popLayer.innerHTML="";
¡¡¡¡popLayer.style.filter="Alpha()";
¡¡¡¡popLayer.filters.Alpha.opacity=0;
¡¡¡¡} else {
¡¡¡¡if(o.dyclass!=null) popStyle=o.dyclass
¡¡¡¡else popStyle="cPopText";
¡¡¡¡curShow=setTimeout("showIt()",tPopWait);
¡¡¡¡}
¡¡¡¡}
¡¡¡¡}
¡¡¡¡function showIt() {
¡¡¡¡popLayer.className=popStyle;
¡¡¡¡popLayer.innerHTML='<BR> '+sPop+' <BR><BR>';
¡¡¡¡popWidth=popLayer.clientWidth;
¡¡¡¡popHeight=popLayer.clientHeight;
¡¡¡¡if(MouseX+12+popWidth>document.body.clientWidth) popLeftAdjust=-popWidth-24
¡¡¡¡else popLeftAdjust=0;
¡¡¡¡if(MouseY+12+popHeight>document.body.clientHeight) popTopAdjust=-popHeight-24
¡¡¡¡else popTopAdjust=0;
¡¡¡¡popLayer.style.left=MouseX+12+document.body.scrollLeft+popLeftAdjust;
¡¡¡¡popLayer.style.top=MouseY+12+document.body.scrollTop+popTopAdjust;
¡¡¡¡popLayer.style.filter="Alpha(Opacity=0)";
¡¡¡¡fadeOut();
¡¡¡¡}
¡¡¡¡function fadeOut(){
¡¡¡¡if(popLayer.filters.Alpha.opacity<popOpacity) {
¡¡¡¡popLayer.filters.Alpha.opacity+=showPopStep;
¡¡¡¡tFadeOut=setTimeout("fadeOut()",1);
¡¡¡¡}
¡¡¡¡}
¡¡¡¡document.onmouseover=showPopupText;
¡¡¡¡</script>
¡¡¡¡<br><br>
¡¡¡¡<center>
¡¡¡¡<%=cTitle%>
¡¡¡¡<br><br>
¡¡¡¡<% pageBar page, pageTotal %>
¡¡¡¡<br><br>
¡¡¡¡<table border="0" CELLPADDING="4" CELLSPACING="4">
¡¡¡¡<tr>
¡¡¡¡<%
¡¡¡¡'+-----------------------------------+
¡¡¡¡'| Ñ»·Êä³öͼƬ
¡¡¡¡'+-----------------------------------+
¡¡¡¡j = 1
¡¡¡¡i = start
¡¡¡¡Set pp = New possible
¡¡¡¡Do While i < offset
¡¡¡¡thisPicPath = server.mappath("."&pic_path & fileArray(i))
¡¡¡¡x = pp.readX(thisPicPath)
¡¡¡¡y = pp.readY(thisPicPath)
¡¡¡¡If x > cWidth or y > cHeight Then
¡¡¡¡tWidth = x / cWidth : tHeight = y / cHeight
¡¡¡¡If tWidth > tHeight Then
¡¡¡¡w = cWidth
¡¡¡¡h = y / tWidth
¡¡¡¡Elseif tWidth < tHeight Then
¡¡¡¡h = cHeight
¡¡¡¡w = x / tHeight
¡¡¡¡Else
¡¡¡¡w = cWidth
¡¡¡¡h = cHeight
¡¡¡¡End If
¡¡¡¡Else
¡¡¡¡w = x
¡¡¡¡h = y
¡¡¡¡End If
¡¡¡¡If j > cEachLineMax Then
¡¡¡¡j = 1
¡¡¡¡response.Write "</tr><tr>"
¡¡¡¡End If
¡¡¡¡response.Write "<td style=""border: 1px solid #000000"" width=" & cWidth & " height=" & cHeight & " align=center><a href=""./"&pic_path & fileArray(i) & """ target=""_blank""><img border=0 src=" & "."& pic_path& fileArray(i) & " width=" & w & " height=" & h & " alt=""Îļþ:" & fileArray(i) & " <br> ³ß´ç:" & x & " ¡Á " & y & " ""></a></td>"
¡¡¡¡j = j + 1
¡¡¡¡i = i + 1
¡¡¡¡Loop
¡¡¡¡Set pp = Nothing
¡¡¡¡%>
¡¡¡¡</tr>
¡¡¡¡</table>
¡¡¡¡<br>
¡¡¡¡<% pageBar page, pageTotal %>
¡¡¡¡</center>
¡¡¡¡</body>
¡¡¡¡</html>