• ベストアンサー

phpでテキストを返す

html側で <img src="./image.php" /> php側で header("content-type: image/jpeg"); imagejpeg($image); imagedestroy($image); とすると、画像が表示されますが、 これを画像ではなく、テキストで返すにはどのようにしたらいいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • elbend
  • ベストアンサー率50% (7/14)
回答No.2

ざっくり思いつきです。 ■jQueryで読み込む html側 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script> $(function(){ $("#aaaa").load("text.php"); }); </script> <div id="aaaa"></div> php側(text.php) <?php echo "テキスト" ?> もしくはphpを使わず単に テキスト の一行 ■オブジェクトタグで読み込む html側 <object type="text/html" data="text.php"></object> php側は同じ テキスト、との事でしたがhtmlで返しています。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.4

>画像情報を返したいのではなく、単なる「テスト」のテキストを返したいです。 残念ながら、まだ理解できてませんが。 PHPで、 hogehoge.phpなどのファイルを作って、内容は、 echo "テスト"; の1行のみ これを、ブラウザでリクエストすれば、 >単なる「テスト」のテキストを返したいです。 になります。 特にheaderのオーバーライドをしなければ MIMEはデフォルトで、text/htmlなどなので、 そのまま送り出してOKです。 いまいち、やりたいことが不明なので、 もう少しやりたいことを詳しく書いてもらえれば もっといい回答が付きます! 今の所堂々巡り状態から抜け出せずにいますね。

全文を見る
すると、全ての回答が全文表示されます。
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.3

headerを端折るとphpのデフォルトである Content-type: text/html が送出されるのはご存知ですよね? 質問を題意どおりに解釈すれば、htmlではなくplain textとして返したいのでしょうから、 header("content-type: text/plain"); echo "test"; でしょうかね。返すテキストは何でもお好みで(というか与えられるQueryStringなどで動的に変えるのが普通でしょうね)。

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

画像をテキストで返したら、画面ぐちゃぐちゃになるだけだと思いますが。 header("content-type: image/jpeg"); これを header("content-type: text/html"); これで、画像をテキストで返せます。 質問通りに解釈するとこうなります。 そもそも「画像をテキスト」には変換はできないので、 何か大きな言葉が足りていないのではないかと 感じてます。 どういう結果を期待しているかを 書いてもらえれば、より適切な答えになると思います。

ENTRE
質問者

補足

すいません。説明不足でした。 画像情報を返したいのではなく、単なる「テスト」のテキストを返したいです。 よく、google等で1行タグを入れると、テキスト情報が表示されるのと同じことを実施したいです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • phpでの画像出力

    フォームでアップロードした画像(jpg)を、base64でエンコードしてテキストとしてDBに格納しています。 そのデータをDBから取り出して、PHPで出力したいのですが、上手く行きません。 下記のような手順で試しましたが、ダメでした。 ※php5とMySQLです。 $img = base64_decode("※DBから取り出したテキスト"); header("Content-type: image/jpeg"); echo $img; 尚、下記のような形では画像表示出来ましたが、出来ればphpからの出力をしたいと考えています。 <img src="data:image/jpeg;base64,※DBから取り出したテキスト" /> php初心者ですが、よろしくお願い致します。

    • ベストアンサー
    • PHP
  • PHPでGDライブラリを使って縮小した画像を直接表示したい

    PHPでGDライブラリを使って、「image.jpg」という画像(800x222のJPEGファイル)を、GETで渡した幅に縮小させたくて、次のように書きました。 -----reimage.php--------------------- <?php header("Content-Type:image/jpeg"); $old_width=800; $old_height=222; $width = htmlspecialchars($_GET['w']); $height = ($old_height / $old_width) * $width; $source = imagecreatefromjpeg("image.jpg"); $re_image = imagecreatetruecolor($width,$height); imagecopyresampled($re_image,$source, 0, 0, 0, 0,$width, $height, $old_width, $old_height); imagejpeg($re_image); imagedestroy($re_image); ?> -------------------------- 他のHTMLファイルから <img src="reimage.php?w=480"> などとすると縮小された画像が表示されるのですが、直接「reimage.php?w=480」を開くと、文字化けした文字列が並んでいるばかりで画像が表示されません。 firefoxでMIMEタイプを見てみると、「text/html」になっています。 >header("Content-Type:image/jpeg"); の部分がうまくいっていないのだと思いましたが、どう直せばいいのか分かりません。 なお、サーバーはxreaの広告免除を使っています。 まだPHPを勉強し始めて日が浅いので、見当違いなことを聞いているかも知れませんが、よろしくおねがいします。

    • ベストアンサー
    • PHP
  • phpで画像のリサイズ表示

    質問お願い致します。 phpで画像のリサイズをして表示させたいと思っています。 色々調べた結果下記のサンプルコードを入れてみました。 <?php header("Content-Type:image/jpeg"); $imgpath = "http://*****************.jpg"; $im_info = getimagesize($imgpath); $src_im = ImageCreateFromJPEG($imgpath); $dst_im = imagecreate($im_info[0]/2,$im_info[1]/2); imagecopyresampled($dst_im,$src_im,0,0,0,0,$im_info[0]/2,$im_info[1]/2,$im_info[0],$im_info[1]); imagejpeg($dst_im); ?> しかし「画像ファイル "http://*****************.php" は壊れているため、表示できませんでした。」となってしまいました。 色々試した結果、下記の記述だけでも「画像ファイル "http://*****************.php" は壊れているため、表示できませんでした。」と表示されてしまいました。 <?php header("Content-Type:image/jpeg"); ?> 「header("Content-Type:image/jpeg");」を使用する際にはphp.iniの書き換えをするのかと調べてみたのですが、結局原因はわかりませんでした。 サーバーはさくら(スタンダードコース)です。 PHPは「PHP 5.2.17」になります。 どなたかお知恵を貸して頂けないでしょうか。 宜しくお願い致します。

    • 締切済み
    • PHP
  • Headerが送信されない!?

    Apache/php初心者です。 GDを使った携帯用phpを作っています。 phpで出力したHTML側で次のような記述をしています。 <img src="PutImg.php?ImgID=35051" width="100" height="100"> PutImg.phpで header( "Content-type: image/jpeg" ); imagejpeg ( $img ); と処理しています。 携帯シミュレータで確認すると ローカルの「Ap2+php4.4.2/win版」では Content-Type: image/gif となり画像が表示されます。 レンタル・サーバの「Ap+php4.4.2/Linux版」では Content-Type: text/html となり画像が表示されません。 まるでheader()が無視された感じです。 同様なトラブルを経験された方は居ませんか? どこら辺をチェックしたら解決するのでしょうか? 宜しくご教授ください。

    • ベストアンサー
    • PHP
  • 「imagejpeg」(GD)で作成した画像を保存できない

    <?php // 空の画像を作成し、テキストを追加します $im = imagecreatetruecolor(120, 20); $text_color = imagecolorallocate($im, 233, 14, 91); imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color); // content type ヘッダを、ここでは image/jpeg と設定します header('Content-type: image/jpeg'); // 画像を出力します imagejpeg($im); // メモリを開放します imagedestroy($im); ?> http://www.php.net/manual/ja/function.imagejpeg.php を参照して(そのまま利用して)、画像を作成して表示させてみました。 すると、これはその通り、うまく画像が表示されました。 しかし、 <?php // 空の画像を作成し、テキストを追加します $im = imagecreatetruecolor(120, 20); $text_color = imagecolorallocate($im, 233, 14, 91); imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color); // 【追加分】: 画像を保存する imagejpeg($im, 'new.jpg'); // content type ヘッダを、ここでは image/jpeg と設定します header('Content-type: image/jpeg'); // 画像を出力します imagejpeg($im); // メモリを開放します imagedestroy($im); ?> のように imagejpeg($im, 'new.jpg'); を挿入して、その画像を保存しようとしているのですが、うまくいきません。(何も起こりません。) ちなみに、保存するためのディレクトリのパーミッションはその親ディレクトリを含め、(7,7,7)です。 「new.jpg(相対パス)」を「/www/.../new.jpg」のように絶対パスを使ってやっても結果は同じでうまくいきませんでした。 どのようにすれば、新しく作成した画像を保存できるのでしょうか? ちなみに、OSはLinux(Fedora10)です。もちろん、GDは先のテストで証明される通り、動作していると思います。 よろしくお願い致します。

    • 締切済み
    • PHP
  • ImageTTFTextで保存すると文字が表示されない

    指定した画像(jpeg)に文字を埋め込みをして 出力は出来たのですが、 保存をすると文字が無い状態で保存してしまいます。 以下のようにソースは書いております。 <?php Header ("Content-type: image/jpeg"); $image=imagecreatefromjpeg("aaa.jpg"); $txt = mb_convert_encoding($_POST["moji"], "UTF-8", "SJIS"); ImageTTFText ($image, 9, 0, 60, 45, 0, "HGRSGU.TTC",$txt); //jpeg画像作成 imagejpeg($image); //画像リソースの開放 imagedestroy($image); ?> おかしいと思われるところ等御座いましたらご教授願います。

    • ベストアンサー
    • PHP
  • GD(php)での image関数 イメージ関数でブラウザ出力が出来ない

    下記ソースのimage.phpというファイルを作りました。 直接http://url/image.phpでアクセスすると画像が表示されません。 <? header("Content-Type: image/png"); $image = imagecreate(120,120); $black = imagecolorallocate($image,0,0,128); $yellow = imagecolorallocate($image,255,255,0); imageline($image,10, 60, 110, 60, $yellow); imagepng($image); imagedestroy($image); ?> imagepng($image);を imagepng($image,"test.png"); に変えたら、正しく同フォルダーにtest.pngが出力され、こちらは問題ないファイルとなっています。今回の処理ではphpを画像ファイルとして扱いたいのですが、 このケースで考えられる原因教えてください。 参考までにtest.htmlに <html><head><title>test</title> <img src="image.php"></body></html> と書いても結果は同じく画像表示が出来ませんでした。 <html><head><title>test</title> <img src="test.png"></body></html> では表示出来ます。

    • 締切済み
    • PHP
  • PHP GD 画像リサイズ

    PHP+GDで携帯サイト用の画像リサイズ処理させるプログラムを書籍のサンプルプログラムを元に作成していますが画像が表示されません。 GD:ver2.17 $image_data = @imagecreatefromjpeg($image_file); $output_image_data = @imagecreatetruecolor($output_image_x, $output_image_y); @imagecopyresampled($output_image_data, $image_data, 0, 0, 0, 0, $output_image_x, $output_image_y, $image_x, $image_y); header('Content-Type: image/jpeg'); @imagejpeg($output_image_data); @imagedestroy($image_data); @imagedestroy($output_image_data); 動作確認は携帯とPC両方でやってますが、携帯だと画像表示されず×が表示され、PCだと文字化けした文字が出力されます。 PCで所々デバック文を表示させたりして確認したところimagecopyresampled関数ではTRUEが返ってきておりましたが、imagejpeg関数以降のデバック文が表示しませんでした。 初心者なのでうまく説明できなくてすいません。 お手数ではございますがご教授お願いします。

    • ベストアンサー
    • PHP
  • jpeg画像を表示する方法

    質問させてください。 ボタンが押されると画像が表示されるプログラムを作成したのですが、画像部分が文字化けされた文字として表示されます。 <html> <head> <title>おみくじ</title> </head> <body> <CENTER> <form method="GET" action="<?php echo $_SERVER['PHP_SELF'];?>"> <input type="submit" value="おみくじ" name="button"> </form> <?php if (isset($_GET["button"]) && $_GET["button"] !== "") { $image_in = imagecreatefromjpeg("img/omikuji.JPG"); header ( "Content-type: image/jpeg" ); imagejpeg ($image_in); imagedestroy($image_in); } ?> </CENTER> </body> </html> phpのソースを丸々別ファイルにするという方法もとったのですが、状況は変わりませんでした。 どなたかお知恵をお貸しください。

    • ベストアンサー
    • PHP
  • PHP 画像の表示

    プログラミング初心者です。 PHPでブラウザに画像を表示したいのですが映らなくて 以下のソースコードは間違っているでしょうか? <?php $fileName = "img/test.jpg"; //ファイル名 if (file_exists($fileName)) { header('Content-type: image/jpeg'); header('Content-Length: '.filesize("http://localhost:8080/test.jpg")); //あった方が良い readfile("http://localhost:8080/test.jpg"); //ファイルを読み込んで標準出力に書き出し exit; } ?>

    • ベストアンサー
    • PHP
DCP-J572Nのカラー印刷がおかしい
このQ&Aのポイント
  • DCP-J572Nのカラー印刷が全体的に赤くなる問題について相談です。
  • 使用環境はiOSで無線LAN接続、関連ソフトはプラザー年賀状アプリを使用しています。
  • 問題解決に関連するFAQは「インクジェット プリンター」のインクトラブルについてのFAQです。
回答を見る

専門家に質問してみよう