• 締切済み

htmlの入力フォームからphpに値を渡しphpから画像ファイルが組み込まれたhtmlを生成する方法について

イメージとしては脳内メーカーの様に、入力された文字列を画像に置き換えて、 生成されたhtmlに画像の組み込みを行いたいのですが上手くいきません。 基礎的な理解が低くて申し訳ないのですが、 やりたい事は以下のとおりです。 (1)「入力.html」ファイルのインプットフォームに文字情報を入力。 (2)入力した文字情報を「処理.php」ファイルに送信。 (3)「処理.php」ファイルで入力された文字列を画像ファイルに置き換える。⇒「画像.jpg」を生成。 (4)生成された「画像.jpg」を「出力.html」ファイルに組み込み、「出力.html」を表示。 (1)(2)(3)の工程までは作成できたのですが、生成した画像を別のhtmlファイルに組み込んで表示させる方法が分かりません。 <IMG src="~.php?val=XXX">といった形でhtmlに組み込むことができるのはわかっているのですが、、、、、 セッション変数を使わないとだめなのでしょうか?

  • PHP
  • 回答数1
  • ありがとう数0

みんなの回答

  • galluda
  • ベストアンサー率35% (440/1242)
回答No.1

がると申します。 んと…画像は作成できてるんですよね? だとしたら。結果の出力HTMLの、IMGを出すところで <IMG src="hogehoge.php?パラメタ" /> としてここでプログラムをcallし、PHPプログラムで直接画像を出力してしまうのが、一番の近道だと思うのですが如何でしょうか?

関連するQ&A

  • PHPによる画像の生成による色の変化

    お世話になっております。 PHPでアップロードしたjpg画像を縮小して生成しているのですが、色がおかしくなってしまいます。 (全ての画像が荘ではないのですが、変わるものは元の画像とはまったく違った青の強い色になってしまう。) ソースはこんな感じなのですが、何かおかしい部分があったらお教えいただけますでしょうか。 また、何か画像処理を加えてあるものを使用するとこのような経験がある方いらっしゃいましたらよろしくお願いいたします。 version 4.3.8です。 ******************** function imgjpg($_val1,$_val2,$_val3) { $size=GetImageSize("$_val1"); $image_in = ImageCreateFromJpeg("$_val1"); //縦長か横長か計算 $ratio = $size[0] / $size[1]; if($ratio > 1){ //横長の場合 $image_out = ImageCreate($_val3,$_val3 / $ratio); imagecopyresized($image_out,$image_in,0,0,0,0,$_val3,$_val3 / $ratio,$size[0],$size[1]); } else {//縦長の場合 $image_out = ImageCreate($_val3 * $ratio,$_val3); imagecopyresized($image_out,$image_in,0,0,0,0,$_val3 * $ratio,$_val3,$size[0],$size[1]); } ImageJPEG($image_out,$_val2); ImageDestroy($image_in); ImageDestroy($image_out); ********************

    • ベストアンサー
    • PHP
  • phpで画像処理

    phpで画像処理 いつもお世話になっております。 phpで画像処理を行いたいのですが どのような方法があるかご存知の方いませんでしょうか。 内容としては ある画像ファイルの予め決めた場所に 文字を出力しブラウザに表示するという仕様です。(phpファイルにアクセスした際)

    • ベストアンサー
    • PHP
  • HTMLのフォームで入力した値をPHPで受け取る

    こんにちは LinuxにPHPとMySQLをインストールしているのですが、入力フォーム(HTML)で input type="text" name="aaa" で入力した値を、actionで飛ばしたphpで変数($aaa)として受け取れません。 単純なphpファイル(phpinfo();のみや、print "文字列"だけ)だと表示され、一つのファイルの中で変数の中に文字列を格納してprintで表示すると成功します。 OSはRed Hat Linux release 7.3 OSインストール時に合わせてインストールされたApache(Apache/1.3.23 Server)を使用。 phpはhttp://www.php.netでダウンロードした「php-4.2.3.tar.gz」を解凍し、configureを行う際に、MySQLとApacheとの連係を指定しています。 インストール後にApacheの設定ファイル(etc/httpd/conf/httpd.conf)の以下の2行の行頭のコメントマークを外してます。 AddType applocation/x-httpd-php .php AddType applocation/x-httpd-php-sourcd .php 分かる方、教えてください。

    • ベストアンサー
    • PHP
  • フォームへ入力した値の取得について

    PHPを始めたばかりの初心者です。 Windows NT4.0 + apache 1.3.24 + php 4.20の環境で 以下のようなサンプルプログラムを作って実行したのですが、「送信」ボタンを押しても、入力した文字が表示されません。初歩的な質問ですいませんが、原因を御教授下さい。 <HTML> <body> <FORM ACTION="sample.php" METHOD="POST"> 文字の入力 <INPUT TYPE="text" NAME="val" VALUE=""><BR> <INPUT TYPE="submit" VALUE="送信"> </FORM> <BR> <?PHP print "入力文字は<B>" . $val . " </B>です。"; ?> </BODY> </HTML>

    • ベストアンサー
    • PHP
  • フォームの値残るのか

    htmlファイルからフォームで入力された文字をphpファイルに渡し、txtに書き込み処理をしています。 html→php(入力確認)→php(txtへ書き込み) という流れなのですが、php(入力確認)のところで、クライアントがIEの戻る機能を使い、htmlに戻った時フォームの値はそのままです。 postで渡される中身というのはどこかにキャッシュとして残っているのでしょうか。変数の中身は一度使うと無くなるとなにかで読んだような気したのですが。 戻るボタンで戻りフォームの値が残っているのはいいのですが、(むしろその方が使う側からするといいのでそのままがいいのですが)どこかに情報が残っているとまずいです。 知識があいまいなのでうまく説明できませんが、ご存知の方よろしくお願いします。

    • 締切済み
    • PHP
  • フォーム入力

    お世話になります。 現在PHPをUTF-8で作成しております。 UTF-8で作成したPHP(HTML)のフォームより日本語を入力してsubmitしたとき、入力値を何も加工せずに$_POST['inputのname']で表示するときちんと文字化けせずにUTF-8で表示されているようです。 この場合、mb_encoding の関数を使用する必要はありませんよね?? また、 入力値をhtmlentities($入力値,ENT_QUOTES,'UTF-8')としてみて、このままだと日本語が入力された場合表示する文字列は文字化けしてしまうので、表示する前にhtml_entity_decode($入力値)でデコードしています。 この場合だとhtmlentitiesは特に使用する必要はないのでしょうか? エンコード→なんらかの処理→デコードとしているのですが、なんとなく必要ない気もしてきてしまいました。 文字コードについては自分なりに勉強したつもりですが、PHP内部でどのような処理が行われるかなどはよく理解できていないので、どうかご教授ください。 よろしくお願いいたしす。

    • ベストアンサー
    • PHP
  • phpで画像表示した際に

    veiw.php?id=1のような形式でphpで画像表示しています。 各ブラウザで画像右クリックで保存すると違いがあり質問です。 画像表示のファイル名はview.phpで出力形式はjpgというのが前提で 保存時の各ファイル名は下記の通りでした。 ie7=view.jpg FF3=view.php Chrome=view.php.jpg opera=view.jpeg FF3以外はそれぞれファイル名が微妙に異なるものの画像として保存 できるのですがFF3のみ拡張子がphpとして保存されてしまいます。 ※保存させる事が表示の目的ではないのですが気になったもので・・・ 保存されたファイルをエディタで開いても 『ファイルに含まれていたNull文字(00H)は、スペースに変換して開きます。』 とアラートが表示されそのまま開くとすっかり文字化け?しているようで ソースが見られるというような事もないので問題ないと思うのですが 全てのブラウザで保存した際に画像として保存させたいのですが どうすれば可能でしょうか? FF3だけ違うのでブラウザの仕様?とも思ったのですがご存知の方が いらっしゃいましたらアドバイスお願い致します。

    • 締切済み
    • PHP
  • フォームに入力された値から、PHPでCSVデータを読んで表示させたい。

    フォームに入力された値から、PHPでCSVデータを読んで表示させたい。 現在、PHPでお申し込みフォームを作成中なのですが、どこのページから来たかを判別するための値から、そこのページ名を表示させたいのですが、うまくできません。 CSVファイルには1列目に値、2列目にページ名が書かれたものが、50行あります。その中から、 例えば値が5だったら、5行目の2列目に書かれているページ名を表示させたいのですが、どうしたらいいのか、教えていただきたいです。

    • ベストアンサー
    • PHP
  • フォームに入力された値により画像を変更

    【質問概要】 フォームのInput type="text"エリアに入れた文字列により、HTMLページのテーブル内の画像を他の画像に変更するにはどうすればよいかお分かりの方おられますか? できれば、コードをお教え下さい。 しばらくJavascirptを使っていなかったためコードの書き方を忘れてしまいました。 【詳細】 例えば3つのgif画像ファイルを予めimgフォルダー内に用意しておきます。 画像名は、それぞれ test1.gif test2.gif test3.gif としておきます。 通常 この画像は、 <table> <tr> <td><img src="img/test1.gif"><td> <tr> </table> などでHTMLページに表示できると思いますが、このHTMLページに表示されている画像(test1.gif)をフォームの入力欄に他の画像のファイル名(test2.gif又はtest3.gif)を入れることによりtest2.gif又はtest3.gifに変更したいのです。もちろんJavascriptにアクションを起こさせるためにフォームに画像のファイル名を入れた後は、「画像変更」等の予め作成しておいたボタンを押す必要があると思いますが。 画像のファイル名を入力するフォームの入力欄設置場所は次の二つのタイプが必要です。 タイプ1: 画像を表示するHTMLページと同じページに設置してあるもの タイプ2: 画像を表示するHTMLページと別ウィンドウのHTMLページに設置してあるもの タイプ1とタイプ2は、別々のプログラムでかまいません。 また、画像の名前(test1.gif、test2.gif、test3.gif)は「.gif」部分が共通のため、「.gif」部分はフォームの入力欄に入力する必要がなくtest1, test2又はtest3と入力すればJavascirptの方で勝手に「.gif」部分は画像名に付加して処理するようにしたいのですが。 よろしくお願いします。 キャサリン

  • PHPで動的に生成した画像がキャッシュされない

    はじめまして。 PHPにて動的に生成した画像がブラウザにキャッシュされずに悩んでいます。 Smartyテンプレートに以下のように記述し <img src="getbin.php?pid=1705&size=125&q=50&_.jpg" border="0"> 生成前にファイルの存在をチェックし、既にファイルがあれば、そのパスにリダイレクトを するようになっています。 リダイレクト前に出力するヘッダーに問題があるのでしょうか? 以下にヘッダー情報を記します。 ご指摘ご指導お願いいたします。 ---------------------------------------------------------- http://hogehogehoge.net/getbin.php?pid=1705&size=125&q=50&_.jpg GET getbin.php?pid=1705&size=125&q=50&_.jpg HTTP/1.1 Keep-Alive: 300 Connection: keep-alive Referer: http://hogehogehoge.net HTTP/1.x 302 Found Date: Tue, 19 May 2009 05:01:28 GMT Server: Apache/2.2.3 (CentOS) X-Powered-By: PHP/5.1.6 Expires: Tue, 19 May 2009 06:01:28 GMT Cache-Control: max-age=3600 Pragma: cache Location:http://hogehogehoge.net/tmp/photo/1705/1705_125.jpg Content-Length: 0 Keep-Alive: timeout=15, max=75 Connection: Keep-Alive Content-Type: image/jpeg ---------------------------------------------------------- http://hogehogehoge.net/tmp/photo/1705/1705_125.jpg GET /gizmophoto/tmp/photo/1705/1705_125.jpg HTTP/1.1 Keep-Alive: 300 Connection: keep-alive Referer: http://hogehogehoge.net If-Modified-Since: Mon, 18 May 2009 03:29:10 GMT If-None-Match: "8d803c-831-65bd0d80" Cache-Control: max-age=0 HTTP/1.x 304 Not Modified Date: Tue, 19 May 2009 05:01:28 GMT Server: Apache/2.2.3 (CentOS) Connection: Keep-Alive Keep-Alive: timeout=15, max=61 Etag: "8d803c-831-65bd0d80" ----------------------------------------------------------

    • 締切済み
    • PHP

専門家に質問してみよう