
お世話になります。
PHPで入力フォームを作成し、送信ボタンを押下した後に
入力内容の確認画面を表示するようにしています。
その入力確認画面をそのままPDFで生成したいんです。
調べた所、TCPDFやmPDFなどPDF生成ライブラリがあるみたいですが
file_get_contentsでHTMLを取得する場合は実際にそのページにアクセスして
そのレスポンスを利用しているんですよね。
なので確認画面等の前画面で入力した情報を元に作成したHTMLには使えないんでしょうか。
確認画面をそのまま利用してPDF生成することはできないのでしょうか。
実現するにはフォームから入力された情報を元に別途PDF生成用のHTML等を組む・・・のようなことをしないと駄目なんでしょうか。
分かりづらい質問で申し訳ありませんがよろしくお願いします。
No.2ベストアンサー
- 回答日時:
Ano1 語弊があるので一応訂正
>html出力前にバッファリングを開始
>HTMLが終了したら
出力の前後に限らず、PDFにしたい箇所で適宜 ob_start()~ob_end_flush()でかまいません。
返事が遅くなって申し訳ありません。
回答ありがとうございました。
なるほど、たしかにそうすればいけますね。
考えつきませんでした。
プログラムの例示もしていただいてありがとうございました!
No.1
- 回答日時:
バッファを利用するとよいでしょう。
ざっくりとこんな感じ---------------------------------------
//html出力前にバッファリングを開始します。出力先は画面ではなく内部のメモリになります。
ob_start();
//通常通りHTML出力(この段階ではブラウザには送信されません)
echo "<html><body>testtesttest</body></html>";
//HTMLが終了したら、バッファの内容をPDF用に取得しておいて…
$html = ob_get_contents();
//溜まったHTMLを一気に送信、出力してバッファリング終了
ob_end_flush();
//あとは$htmlの内容をPDFにするだけ
require "mpdf.php";
$mpdf=new mPDF('utf-8', 'A4');
$mpdf->WriteHTML($html);
$mpdf->Output("./test.pdf", 'F');
※ファイルではなく画面にPDFとして出力したいのなら、ob_end_flush()ではなく、ob_cleanして
$mpdf->Output();
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php 確認表示画面で値をSESSIONから取り出す理由の解釈は正しいでしょうか? 1 2023/06/09 17:39
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP 掲示板のセキュリティについてアドバイスお願い致します 1 2023/08/11 20:44
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- PDF AutoCAD図面をPDF fileに変換した際、画像情報やブロック名はわかるのでしょうか。 1 2022/06/03 09:42
- Excel(エクセル) PDFファイルに日付を名前にして保存したい。 エクセル2019でワークシートに請求書のフォームを作り 2 2023/05/27 11:13
- PHP $_SESSIONに渡した後はそのまま使っても問題ありませんか? 3 2022/11/08 22:17
- 確定申告 e-taxで開業届を出す方法がわかりません 1 2022/06/01 19:00
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページ移動した場合の、フォー...
-
掲示板のセキュリティについて...
-
htmlからbatファイルを起動する
-
フォームラン(https://form.ru...
-
アイフォン使ってたらちょくち...
-
ビジネスメールの敬称
-
Googleフォームを回答したか確...
-
初歩的な事だと思います。 Sub...
-
エクセルVBA テキストボックス...
-
テキストボックスの番号を使っ...
-
フォームを再送信しますか?
-
お問い合わせフォームから送信...
-
入力フォームの値をQRコードで...
-
DataGridView 列ごとの入力制限
-
教えて!全角文字「μ」の半角
-
エディットボックスの入力制限...
-
ホームページに時計を設置したい。
-
エクセル VBA チェックボック...
-
数字以外の入力をエラーにする...
-
TextBoxから数字が文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlからbatファイルを起動する
-
アイフォン使ってたらちょくち...
-
メール送信フォームとhistory.b...
-
戻ると入力したフォームの内容...
-
ウェブサイト上のボタンを自動...
-
ページ移動した場合の、フォー...
-
大学の出欠確認でQRコードを読...
-
Zend framework リダイレクトで...
-
階層式のプルダウンセレクトを...
-
メールフォームの確認画面が表...
-
RealSystem Producer BasicをDL...
-
非同期通信で掲示板を作る際の...
-
子画面から親画面に値を返す方法
-
掲示板のセキュリティについて...
-
編集不可で固定とするため とは
-
PHPとSQLiteのアップロードにつ...
-
PHPで特定の文字列を抽出する方法
-
ブラウザの「戻る」ボタンを押...
-
SQL insert文のシングル・ダブ...
-
accessでフォームを希望の入力...
おすすめ情報