[解決済み] 見積書印刷等のpdfが生成されない
-
投稿者投稿
-
2011年9月9日 6:57 AM #50655d2ewing参加者
動作に関するご質問の場合は必ずご記入ください。
Welcart のバージョン:1.0.6
症状を確認したブラウザ:win(firefox6.0.2、IE8、googlecrome13.0.782.220)
サーバー(会社名、サービス名):お名前.comのVPS
PHPのバージョン:5.1.6
SSLの利用: 無し
WordPress のバージョン:3.1.2
WordPress のパーマリンク設定:/%post_id%
この度はお世話になります。
つきましては、受注データ編集画面の印刷フィールドのところで見積書印刷等のリンクをクリックするとpdfが生成されると思うのですが、
上記ブラウザでそれぞれ試したところ、
googlecrome→PDFドキュメントを読み込むことができませんでした。
IE8→ファイルの最初に%pdf-がありません
firefox6.0.2→真っ白なウインドウ
のようになり、まったくpdfが作成されません。
以前同じ様な現象がおこっていらっしゃる方が投稿されていましたが未解決のようですし、どのように対処したらよいかまったく検討もつきません。
ちなみに最初にwelcartをインストールした際にエラーがでたのですが、memorylimitが低すぎたためでhtaccessで50Mにかえて成功しました。
他にwelcartを再インストールして試してみても同じでした。
カート等、その他の機能はまったく問題ないのですが、いったい何が原因と考えられますでしょうか?
phpのバージョンが低いとかは関係ないでしょうか?
まことにお手数ですが、何かわかりましたらご教授ください。
よろしくお願いいたします。
2011年9月9日 7:42 AM #62810nanbuキーマスターこんにちは。
サーバーのスクリプトエラーログを見せていただけますでしょうか。
2011年9月9日 8:49 AM #62811d2ewing参加者いつもお世話になっております。
お返事いただきどうもありがとうございます。
ご希望の内容のものかどうかわかりかねますが、出力されましたエラーログファイルを添付しましたのでご確認よろしくお願いいたします。
2011年9月9日 9:32 AM #62812nanbuキーマスターログを拝見しました。
Permission が原因でインストールがうまく行っていないような感じがします。エラーので方が異常なので、ディレクトリのPermissionまわりを確認して再インストールしてみてください。
なお、再インストールの際はテーマフォルダにWelcart Default テーマのフォルダが有りましたら、一旦削除してからWelcart をインストールしてください。
よろしくお願いします。
2011年9月9日 1:08 PM #62813d2ewing参加者ご連絡ありがとうございます。
再度すべてのフォルダやファイルを洗い直してから再インストールしたらpdfが生成されるようになりました。
テーマフォルダにWelcart Default テーマのフォルダがあったので削除しました。
その他デフォルトテーマを元に改変したのですが、不要と思われるテンプレートを削除したりしました。そのとき中身のソースはほとんど直しておりません。
結局なにが問題だったかは不明のままでした。
この度はご教授いただきどうもありがとうございました。
また何かありましたらよろしくお願いいたします。
2011年9月12日 1:32 AM #62814nanbuキーマスターテーマファイルが壊れていたのかもしれません。
現在のWelcart(1.0) はDefault テーマが存在すると、再有効化してもテーマを上書きしません。単にテーマを削除して再有効化するだけでよかったのかもしれません。
とにかく正常に戻ってよかったです。
2011年9月16日 7:55 AM #628159steps参加者
Welcart のバージョン:1.0.6
症状を確認したブラウザ:win(firefox6、IE8、Chrome)
サーバー(会社名、サービス名):www.sixcore.ne.jp
PHPのバージョン:PHP 5.3.3
SSLの利用: 無し
WordPress のバージョン:3.2.1
WordPress のパーマリンク設定:
私の環境でも同じようにpdfが生成されない現象が発生しました。
ソースを追って確認してみたところ、PDFをブラウザに出力処理している次の部分でエラーが発生しているようでした。
/includes/order_print.php – 203行目あたり
$pdf->Output($filename, 'I');
↓ ob_end_clean(); を追加
ob_end_clean();
$pdf->Output($filename, 'I');解決策として、ob_end_clean()をOutputの前に追加すると問題なくPDFが出力されるようになりました。おそらく個々のサーバ環境にもよる問題なのかもしれませんが、とりあえず私の環境ではこの方法で無事にPDFが見られるようになりました。
参考ページ:http://www.muchacolla.com/php/259/
2011年9月17日 1:37 AM #62816nanbuキーマスターこんにちは。9steps さん。
PDF の出力前にheader がはかれてしまっているのかもしれません。そういう意味ではob_end_clean() は有効です。
しかし、他の動作に影響が出てくる可能性も有りますので、はかれているものがエラーかどうかを確認しなくては根本的な解決にはならないかもしれません。
-
投稿者投稿
- このトピックに返信するにはログインが必要です。