現在の言語: 日本語

戻る

画像表示
ajax

ajaxを使用してphp側から受け取った画像データを表示します。

[サンプル]

copy
[image.php]
// ホスト名が特定の文字列で終わっているかチェックする
$host = $_SERVER['HTTP_HOST'];
$checkURL = "localhost";

if (substr($host, -strlen($checkURL)) !== $checkURL) 
{
    header("HTTP/1.1 403 Forbidden");
    exit("Forbidden");
}

// --- CORS 設定 ---
header("Access-Control-Allow-Origin: http://localhost");
header("Access-Control-Allow-Credentials: true");

// 画像ファイルのパス
$file = "post.png";
$path = __DIR__ . "/" . $file;

// ファイルが存在するかチェック
if (!file_exists($path)) {
    header("HTTP/1.1 404 Not Found");
    exit("Not Found");
}

// MIMEタイプを取得
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime  = finfo_file($finfo, $path);
finfo_close($finfo);

// ヘッダーを設定して画像を出力
header("Content-Type: $mime");
readfile($path);
exit;
[image.php]
// Check if the hostname ends with a specific string
$host = $_SERVER[‘HTTP_HOST’];
$checkURL = “localhost”;

if (substr($host, -strlen($checkURL)) !== $checkURL) 
{
    header(“HTTP/1.1 403 Forbidden”);
    exit(“Forbidden”);
}

// --- CORS Configuration ---
header(“Access-Control-Allow-Origin: http://localhost”);
header(“Access-Control-Allow-Credentials: true”);

// Image file path
$file = “post.png”;
$path = __DIR__ . “/” . $file;

// Check if file exists
if (!file_exists($path)) {
    header(“HTTP/1.1 404 Not Found”);
    exit(“Not Found”);
}

// Get MIME type
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime  = finfo_file($finfo, $path);
finfo_close($finfo);

// Set headers and output image
header(“Content-Type: $mime”);
readfile($path);
exit;
copy

if (substr($host, -strlen($checkURL)) !== $checkURL)
ホスト名が特定の文字列で終わっているかチェックする処理です。
この例では、自サイトのみのチェックをしています。

$file = "post.png";
$path = __DIR__ . "/" . $file;
html側に返すファイルの場所を指定しています。
この例では
test7.html
localhost直下
image.php
localhost/img
post.png
localhost/img
の場所に置いているものと仮定しています。

if (!file_exists($path)) {
表示に使用するファイルの存在有無を確認しています。

$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $path);
finfo_close($finfo);
finfo_file関数でMIMEタイプを取得しています。

header("Content-Type: $mime");
readfile($path);
html側で受け取るための準備をしています。




戻る

著作権情報
ホームページおよプリ等に掲載されている情報等については、いかなる保障もいたしません。
ホームページおよびアプリ等を通じて入手したいかなる情報も複製、販売、出版または使用させたり、
または公開したりすることはできません。
当方は、ホームページおよびアプリ等を利用したいかなる理由によっての障害等が発生しても、
その結果ホームページおよびアプリ等を利用された本人または他の第三者が被った損害について
一切の責任を負わないものとします。