回首页 ◎ 设为首页  
◎ 收藏本站  
◎ 联系我们  
  首 页  网络资讯  教程资料  免费资源  建站指南  休闲娱乐  经典整站  访客留言  
  当前位置:首 页 >> 教程资料 >> 网站编程 >> 远程调用163网易相册的代码PHP/ASP版
最 新 推 荐
PHP入门速成推荐
ASP错误代码推荐
热 门 排 行
PHP站内搜索代码
远程调用163网易相册..
万能播放器源代码[php..
5分钟编写一个ASP论坛
记录蜘蛛爬行的代码 ASP
CMS内容管理系统概述
通过PHP程序知道蜘蛛..
ASP常用数据库连接及..
UTF8下的中文PHP编程
谈网页编程PHP语言的..
值得收藏的一些ASP代码
网站生成静态页面,及..
用IP地址来统计访问人..
用PHP和MySQL保存和输..
PHP生成静态页面详解
ASP中FSO的神奇功能
最 近 更 新
正则表达式
GB2312转换UTF-8的文件
用PHP自动把纯文本转..
asp中可以保存参数值..
PHP对战ASP:这还值得..
怎样才能成为PHP高手..
用ASP实现在线文章翻..
禁用页面缓存的几种方..
关于Zend Optimizer
什么是Session?
广 告 位 置
站 内 搜 索
关键词

搜索方式

搜索范围

精确匹配
远程调用163网易相册的代码PHP/ASP版

来源:盛绿设计 等级:默认等级
发布于2006-09-06 10:27 被读108次 【字体:
使用方法:

例如你的163相册里有张图片地址是 http://img306.photo.163.com/t9913085/38410833/1041527229.jpg

如果直接在其他网站或者论坛的贴图框框的地址里填 http://img306.photo.163.com/t9913085/38410833/1041527229.jpg 这样发出来,肯定显示红叉叉

但只要在图片地址前面加上 http://abc.com/getimg.php?url=

即,贴图图片的地址中填 http://abc.com/getimg.php?url=http://img306.photo.163.com/t9913085/38410833/1041527229.jpg

OK! 大功告成,你的网易相册中的图片就可以显示在其他网站了

注:ASP版的使用方法也类似,在图片地址前面加上 http://yourdomains.com/showpic.asp?url=


PHP

<?php
/**********************************************************************
突破防盗链的显示图片标签[simg],PHP程序部分
作者:t1000
开发论坛:水客坊论坛
http://xyz-hunter.ful.cn
http://xyz-hunter.paangood.com
*********************************************************************/
ob_start();
 $img= $_GET['url'];

 $host= $path=str_replace('http://','', $img);
 $host=explode('/', $host);
 $host= $host[0];
 $path=strstr( $path,'/');
 $fp = fsockopen( $host, 80,  $errno,  $errstr, 30);
if ( $fp)
{
@fputs( $fp, "GET  $path HTTP/1.1\r\n");
@fputs( $fp, "Host:  $host\r\n");
@fputs( $fp, "Accept: */*\r\n");
@fputs( $fp, "Referer: http:// $host/\r\n");
@fputs( $fp, "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\r\n");
@fputs( $fp, "Connection: Close\r\n\r\n");
}

 $Content = '';
while ( $str = fread( $fp, 4096))
 $Content .=  $str;
@fclose( $fp);
 $pos=strpos( $Content,"\r\n\r\n");
 $head=substr( $Content,0, $pos);
 $text=substr( $Content, $pos+4);
header( $head);
echo  $text;
?>

ASP:

<%
Dim url, body, myCache

url = Request.QueryString("url")

Set myCache = new cache
myCache.name = "picindex"&url
If myCache.valid Then
body = myCache.value
Else
body = GetWebData(url)
myCache.add body,dateadd("d",1,now)
End If

If Err.Number = 0 Then
Response.CharSet = "UTF-8"
Response.ContentType = "application/octet-stream"
Response.BinaryWrite body
Response.Flush
Else
Wscript.Echo Err.Description
End if

'取得数据
Public Function GetWebData(ByVal strUrl)
Dim curlpath
curlpath = Mid(strUrl,1,Instr(8,strUrl,"/"))
Dim Retrieval
Set Retrieval = Server.CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "Get", strUrl, False,"",""
.setRequestHeader "Referer", curlpath
.Send
GetWebData =.ResponseBody
End With
Set Retrieval = Nothing
End Function


'cache类

class Cache
private obj 'cache内容
private expireTime '过期时间
private expireTimeName '过期时间application名
private cacheName 'cache内容application名
private path 'url

private sub class_initialize()
path=request.servervariables("url")
path=left(path,instrRev(path,"/"))
end sub

private sub class_terminate()
end sub

public property get blEmpty
'是否为空
if isempty(obj) then
blEmpty=true
else
blEmpty=false
end if
end property

public property get valid
'是否可用(过期)
if isempty(obj) or not isDate(expireTime) then
valid=false
elseif CDate(expireTime)<now then
valid=false
else
valid=true
end if
end property

public property let name(str)
'设置cache名
cacheName=str & path
obj=application(cacheName)
expireTimeName=str & "expires" & path
expireTime=application(expireTimeName)
end property

public property let expires(tm)
'重设置过期时间
expireTime=tm
application.lock
application(expireTimeName)=expireTime
application.unlock
end property

public sub add(var,expire)
'赋值
if isempty(var) or not isDate(expire) then
exit sub
end if
obj=var
expireTime=expire
application.lock
application(cacheName)=obj
application(expireTimeName)=expireTime
application.unlock
end sub

public property get value
'取值
if isempty(obj) or not isDate(expireTime) then
value=null
elseif CDate(expireTime)<now then
value=null
else
value=obj
end if
end property

public sub makeEmpty()
'释放application
application.lock
application(cacheName)=empty
application(expireTimeName)=empty
application.unlock
obj=empty
expireTime=empty
end sub

public function equal(var2)
'比较
if typename(obj)<>typename(var2) then
equal=false
elseif typename(obj)="Object" then
if obj is var2 then
equal=true
else
equal=false
end if
elseif typename(obj)="Variant()" then
if join(obj,"^")=join(var2,"^") then
equal=true
else
equal=false
end if
else
if obj=var2 then
equal=true
else
equal=false
end if
end if
end function
end class
%>

相关专题:暂无相关专题

上一篇:PHP站内搜索代码
下一篇:万能播放器源代码[php版]

共有评论 0 条 网友评分 0分 查看全部

【发表评论】 评分:1分 2分 3分 4分 5分


Powered By Www.Xydw.COM Ver1.14 管理
Copyright © 2004-2005 盛绿设计 All Right Reserved. XCMS
冀ICP备06026128号