ホームページ >php教程 >php手册 >Baidu Tieba で画像にハイパーリンクを追加する方法

Baidu Tieba で画像にハイパーリンクを追加する方法

WBOY
WBOYオリジナル
2016-06-21 08:56:531965ブラウズ

Webmaster.com の Baidu Tieba で画像にハイパーリンクを追加する方法に関する記事を見ましたが、今にして思えば、これは非常に優れた「手段」でした。 ”。今度は全員に転送します。この記事ではaspとphpのコードを紹介します。

実装方法とコード:

1. test.jpg という名前のフォルダーを作成します。

というフォルダーであることを覚えておいてください。

2. 画像が Baidu Tieba に投稿された後にサムネイル形式で表示されるように、このフォルダーの下に 570*383 などの比較的大きな画像を配置します。

3. 次の内容を含むindex.php またはindex.asp ファイルをフォルダーに配置します。

PHP バージョン コード:

以下は引用内容です:
以下为引用的内容:
if($_SERVER['HTTP_REFERER']!=''){
@header("Content-type:image/jpeg");
echo file_get_contents("1.jpg");//第2步中放在test.jpg文件夹下的图片名称,亦即真正显示的图片
}
else{
@header("location:http://www.lyrs.net");//点击缩略图时要跳转到的网址
}
?>
if($_SERVER['HTTP_REFERER']!=''){ @header("Content-type:image/jpeg");

echo file_get_contents("1.jpg");//手順 2 で test.jpg フォルダーに配置した画像、つまり実際に表示される画像の名前 }
それ以外{
@header("location:http://www.lyrs.net");//サムネイルをクリックした際にジャンプするURL

以下为引用的内容:
<%
PIC_Url="1.jpg"

If UCase(Cstr(Request.ServerVariables("HTTP_REFERER")))<>"" Then
Response.Redirect Pic_Url
Else
Response.Redirect "Http://www.lyrs.net"
End if
%>

} ?> テーブル> ASP バージョン コード: 以下は引用内容です: PIC_Url="1.jpg" If UCase(Cstr(Request.ServerVariables("HTTP_REFERER")))<>"" then<🎜> Response.Redirect Pic_Url<🎜> それ以外の場合<🎜> Response.Redirect "http://www.lyrs.net"<🎜> <🎜> の場合は終了 %><🎜>

4. Baidu Tieba に写真を投稿します: http://www.lyrs.net/test.jpg

Baidu Tieba Zhongtu の投稿に URL をアップロードした後、画像をクリックすると、設定されたページにジャンプします。もちろん、URL をコピーしてブラウザに直接貼り付けます。 QQ 上の友達に送信します。訪問者はあなたの Web サイトにリダイレクトされます。

原理分析:

Baidu の画像サイズが大きい場合、サムネイルをクリックすると元の画像が表示されますが、サムネイルは元の画像に直接リンクされず、js コード内にポップアップ表示されます。ポップアップ コードは http://static .tieba.baidu.com/tb/js/pb.js ファイルにあります)、ブラウザにはソース情報がないため、PHP プログラムでソースを確認するか、 ASP プログラムは、ソースが空の場合は、指定された URL にジャンプします。ソースが空でない場合は、test.jpg ディレクトリ内の Index.php または Index.asp ファイルを使用して、直接画像を取得または生成します。フォルダー名が test である理由は、jpg に .jpg を含めることは、Baidu Tieba に投稿するときにフォルダーを画像として偽装することです。

QQで友達に送ったり、ブラウザに直接画像アドレスを入力してアクセスしてもジャンプしてしまうのは出典情報がないためです。

テストアドレス: http://tieba.baidu.com/f? kz=273127757 (9階がPHP版、10階がASP版)

拡張アプリケーション:

実際、index.php または Index.asp の出力はそのままの画像であるため、次の ASP コードは 2 つの画像のランダム表示を実現します。

以下は引用内容です。

<%
PIC_Url="1.jpg2.jpg"

以下为引用的内容:

<%
PIC_Url="1.jpg2.jpg"

TheChar=""'分隔字符
ipy=split(PIC_Url,TheChar)
ipy_S=ubound(ipy)

if inStr(PIC_Url,TheChar)>0 then
Randomize
Pic_Url=ipy(int(ipy_S*rnd))
end if

If UCase(Cstr(Request.ServerVariables("HTTP_REFERER")))<>"" Then
Response.Redirect Pic_Url
Else
Response.Redirect "Http://www.lyrs.net"
End if
%>

TheChar=""の区切り文字
ipy=split(PIC_Url,TheChar)
ipy_S=ubound(ipy)

if inStr(PIC_Url,TheChar)>0 then
ランダム化
Pic_Url=ipy(int(ipy_S*rnd))

の場合は終了

以下为引用的内容:

include("../Config.php");

$font = "mingliu.ttc";//字体(把字体文件放在同目录里)
$size = 8.5; //字体大小(pt)
header("content-type:image/gif");
$nimage=imagecreatetruecolor(228,80);// 新建一个图片宽 228 高 80 像素
$black=imagecolorallocate($nimage,115,115,115); // 取得文字颜色, RGB
$simage =imagecreatefromgif('bg.gif'); // 读取背景图片(自己做一个,比如我这个就是自己PS的)
imagecopy($nimage,$simage,0,0,0,0,228,80); // 把背景图片 copy 到我们要输出的图片上

$i=46;
$sqlstr="select * from art_content order by id desc limit 2";//读取数据库中标题信息的语句
$result=mysql_query($sqlstr);
while($row=mysql_fetch_array($result)){
$text1 = "落叶人生:".$row["title"];
$text1 = iconv("gb2312","utf-8",$text1);//一定要转换成UTF-8,否则中文乱码
imagettftext($nimage,$size,0,2,$i,$black,$font,$text1);//输出第一行文字,坐标:2,46
$i=$i+20;
}

imagegif($nimage); // 输出 GIF 图片内容
imagedestroy($nimage);
imagedestroy($simage); // 关闭之前使用的图片缓冲
?> 

If UCase(Cstr(Request.ServerVariables("HTTP_REFERER")))<>"" then
Response.Redirect Pic_URL
それ以外
Response.リダイレクト「http://www.lyrs.net」
次の場合は終了します
%> テーブル> 同様に、PHP アプリケーションを組み合わせて、PHP を使用して動的な画像をリアルタイムで生成することもできます。たとえば、次のコードはブログの最新の記事のタイトルを読み取って画像を生成できます。 以下は引用内容です。
include("../Config.php"); $font = "mingliu.ttc";//フォント (フォント ファイルを同じディレクトリに置きます)
$size = 8.5 //フォントサイズ(pt)
header("コンテンツタイプ:画像/gif");
$nimage=imagecreatetruecolor(228,80);//幅 228、高さ 80 ピクセルの新しい画像を作成します
$black=imagecolorallocate($nimage,115,115,115); // テキストの色 (RGB) を取得します。
$simage =imagecreatefromgif('bg.gif'); // 背景画像を読み取ります (たとえば、これは私自身の PS です)。 imagecopy($nimage,$simage,0,0,0,0,228,80); //出力したい画像に背景画像をコピーします $i=46
$sqlstr="select * from art_content order by id desc limit 2";//データベース内のタイトル情報を読み取るステートメント
$result=mysql_query($sqlstr);
while($row=mysql_fetch_array($result)){
$text1 = "落ち葉:".$row["title"];
$text1 = iconv("gb2312","utf-8",$text1);//UTF-8 に変換する必要があります。変換しないと中国語が文字化けします。
imagettftext($nimage,$size,0,2,$i,$black,$font,$text1);//テキストの最初の行を出力します、座標: 2,46
$i=$i+20;
}

imagegif($nimage); // GIF 画像コンテンツを出力します。
imagedestroy($nimage); imagedestroy($simage); // 以前に使用した画像バッファを閉じます。
?> テーブル>



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。