-1

ソースコードに次のコードが表示されないようにする方法。

imgタグコード

echo'<img src="jal.gif" alt="Smiley face" height="42" width="42" />';

ソースコード

<img  alt"Smiley face" src="http://www.myweb.com/jal.gif">

実際には、ユーザー画像のパスを表示したくありません。

ありがとう

4

4 に答える 4

1

私はあなたがそのようなものが欲しいと思います、base64エンコーディングで画像をhtmlファイルにコミットします:

<img alt="Smiley face" src="data:image/jpeg;base64,<?php echo base64_encode(file_get_contents("jal.gif")); ?>" />
于 2012-08-06T00:07:44.180 に答える
0

パスを実際に非表示にする方法はわかりませんが、cssを使用して、少なくともユーザーが画像のファイルパスを見つけるための調査を行うことができます。画像をdiv内に配置し、そのdivに背景画像を指定します。

<div id="imgdiv"></div>

cssの場合:

#imgdiv{
    background-image: url('http://www.myweb.com/jal.gif');
}

ユーザーがブラウザで画像をドラッグできないため、これも便利です。

于 2012-08-06T00:08:09.580 に答える
0

プロキシを使用できます。つまり、必要な画像を実際にロードする PHP ページを使用します。たとえば、次のようにすることができます。

<img src="my_proxy.php?img=jal.gif" alt="Smiley face" height="42" width="42" />

その後、my_proxy.phpページはパラメーターを使用して必要な画像を実際に読み込みimgます。

于 2012-08-06T00:05:58.330 に答える
0

私からの最後の解決策:)

コードにはセキュリティ ホールがあります。問題がなければ、投稿を編集してこれらのセキュリティ ホールを修正します。コードを試しませんでした。しかし、機能するためには、ブラウザーがセッションの Cookie をサポートしている必要があり、完全な解決策ではありません。ユーザーは、スニファまたはブラウザの右クリックで画像を取得できます。完全に暗号化することは不可能です。(ajax postを使用して、javscript復号化も実装できます)

ページに含まれていると仮定session_start()します。

showimage.php

<?php
    session_start();
    header("Cotent-Type: image/jpeg");
    readfile($_SESSION["files"][$_REQUEST["id"]]);
?>

index.php

<?php
    session_start();
    $i=rand();
    $_SESSION["files"][$i]="cat.jpg";
    echo "<img src=\"showimage.php?id=".$id."\" />";
?>
于 2012-08-06T00:34:54.337 に答える