お世話になります。
http://apps.cside.com/
このサイトで配布されている「ThemeResMail」というCGIの動作テストをしています。
http://apps.cside.com/theme/tmresmail/
メールフォームCGIで、添付機能もついているのですが、フォームからファイルを添付して送信すると、確認メールにはファイルが添付されて届くのですが、管理者画面のメールログからはファイルの内容が確認できません。
具体的には、下記のようなエラーが出ます。
-> ファイルアクセスエラー。(内部エラー)
-> 一時アップロードファイルの読込みに失敗しました。
管理画面からは、添付ファイルを画面上からダウンロードできるように説明されているのですが、上記のようなエラーが出てダウンロードできません。
またメール投稿の確認画面でも、添付した画像データを表示する事ができるようになっていますが、この投稿確認画面でも画像ふが表示される箇所が「×」マークになって表示されません。
配布されているスキン「求人募集スキン+」を、最低限必要な設定をしてからアップして、動作テストをしてもやはりうまく添付ファイルが表示されません。
管理者側に届く確認メールには、ちゃんとファイルが添付されて届きます。
http://apps.cside.com/theme/tmresmail/skin_haihu/
パーミッションの設定も複雑ではないので、間違っていないはずなのですが、なぜこのようなエラーがでるか原因不明です。
配布先も、一切サポートしないような記述があるので、メールをしても返信が返ってこない可能性が高いので、こちらにアドバイスを求める事にしました。
アドバイスをお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
すみませんちょっと間を空けてしまいました。
エラーメッセージの内容から判断すると
if( $tmp_up_file->openTempFile() &&
$tmp_up_file->checkSessionID( $this->{'req'}->getParam("session") ) &&
$tmp_up_file->readFile( $this->{'req'}->getParam("key"), $file )
) {
か
if( $tmp_up_file->openTempFile() &&
$tmp_up_file->readBoundaryByAdminMode() &&
$tmp_up_file->readFile( $this->{'req'}->getParam("key"), $file )
) {
の 判定でエラーが起こっていて、多分ファイルオープンで引っかかっているのだろうと
踏んだのですが違うみたいですね。
質問文を読み返すと管理者画面…とあるので後者の判定でしょうか。
とりあえずは原因を特定しないとどうにもできないので、
if( $tmp_up_file->openTempFile() &&
#$tmp_up_file->readBoundaryByAdminMode() &&
$tmp_up_file->readFile( $this->{'req'}->getParam("key"), $file )
) {
のように、チェックの一つをスルーしてみてください。
これでメッセージが出なくなればここでのチェックが
怪しいと絞れるのですが。
ご回答ありがとうございます。
$tmp_up_file->readBoundaryByAdminMode() &&
は「AdminMode.pl」と「UpFileReader.pl」の2つのファイルで、同じ記述がありましたので、両方とも試してみました。
「AdminMode.pl」の方で、コメントアウトした場合、管理画面から「メールログ閲覧」を選択して、記事一覧が表示されるので、ログを閲覧したい記事をチェックしてからボタンを押すと、下記のようなエラーが出ます。
--------------------------------------
エラーリポート
-> ファイルアクセスエラー。(内部エラー)
-> 保存用添付ファイル「./data/f_20071126-1.cgi」の読込みに失敗しました。
次のボタン、またはブラウザのバックボタンで前の画面へお戻りください。
ひとつ前の画面へ (←実際はボタンになっています)
--------------------------------------
次に「UpFileReader.pl」の方をコメントアウトしてみると、これまでと同様のエラーが表示されます。
メールフォームでデスクトップから画像ファイルを選択して、確認画面になると添付した画像も確認できるようになっているのですが、この確認画面の段階から画像が表示されません。
ですが、実際に管理者に届くメールには、添付された画像ファイルがちゃんと届いています。
添付されたファイルを、デスクトップに保存すれば問題なく画像は見る事ができます。
メールには添付して届くのに、WEB上では画像が表示されない状態になっています。
「data」ディレクトリには画像ファイルではありませんが、画像データと思われるログファイルは投稿ごとに作成されます。
やはりファイルオープンの段階で異常があるのかもしれません。
あと、管理者画面で投稿内容を閲覧する事ができるのですが、入力フォームに記入された内容や、チェックボックスやラジオボタンで選択された内容は、ちゃんと見る事ができます。
添付された画像だけが見る事ができない状況です。
お手数をおかけしますが、アドバイスをお願い致します。
No.1
- 回答日時:
エラーメッセージはブラウザ画面に出てくるのですよね?
であれば、UpFileReader.pl の44行目あたりと110行目あたりの
#読む
if( $tmp_up_file->openTempFile() &&
$tmp_up_file->checkSessionID( $this->{'req'}->getParam("session") ) &&
$tmp_up_file->readFile( $this->{'req'}->getParam("key"), $file )
) {
$tmp_up_file->closeTempFile();
} else {
$this->{'ctl'}->displayErrorPage(
ERROR_FILE,
"一時アップロードファイルの読込みに失敗しました。$!" #文字列を修正
);
}
#読む
if( $tmp_up_file->openTempFile() &&
$tmp_up_file->readBoundaryByAdminMode() &&
$tmp_up_file->readFile( $this->{'req'}->getParam("key"), $file )
) {
$tmp_up_file->closeTempFile();
} else {
$this->{'ctl'}->displayErrorPage(
ERROR_FILE,
"一時アップロードファイルの読込みに失敗しました。$!" #文字列を変更
);
}
の二箇所を変更して、エラー発生時にエラーの原因を表示するようにして
原因を確認してください。
ご回答ありがとうございます。
>エラーメッセージはブラウザ画面に出てくるのですよね?
はい、仰る通りブラウザ画面に表示されます。
教えて頂いたように、エラーメッセージの箇所に「$!」を追加して、再度試してみましたが、表示されるエラーメッセージを変わりませんでした。
-> ファイルアクセスエラー。(内部エラー)
-> 一時アップロードファイルの読込みに失敗しました。
上記のように表示されます。
ファイルを添付して送信が完了した後には、「data」ディレクトリの中に「f_20071124-1.cgi」というファイルができます。
このファイルの中をのぞいてみると、文字化けした文字列がならんでいます。
spo1iug61rlTQUtGV5grUeSX.824779713.1195905367.(ここにIPアドレスが入る)
-----------------------------041084067364774
appufairu
1.jpg(←添付したファイル名)
image/jpeg
以下文字化けした文字が続く
サポート掲示板もないため、他の方も同じような症状が出ているのか分からず、私だけの症状なのかバグなのかも分かりません。
アドバイスをお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 Windows Updateが動作しません 7 2022/08/12 16:26
- Windows 10 e-Gov 電子申請について 回答お願いします。 社会保険保険証加入手続きを電子申請しました。 返戻 3 2022/10/02 09:05
- オープンソース Excelファイルをデバッグしたい 4 2022/09/15 10:16
- Android(アンドロイド) Aloha Browser でダウンロードしたファイルをPCに転送するには? 1 2022/05/23 18:54
- Gmail 会社のメルアドから個人のGmailアドレスに送ったら、「このメールにはご注意ください」と警告が出た 2 2022/05/26 15:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/26 17:13
- Windows 10 win10 立ち上げ時のエラー 1 2023/04/17 11:55
- その他(Microsoft Office) officeのWordで作成した文章をメール添付してしたい 3 2023/08/07 07:12
- PHP php 確認表示画面で値をSESSIONから取り出す理由の解釈は正しいでしょうか? 1 2023/06/09 17:39
- その他(クラウドサービス・オンラインストレージ) firestorage_androidスマホでダウンロードできない 1 2022/10/25 08:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ヒアドキュメントの書き方
-
window.open でのファイル指定方法
-
Perl の「stringify」の意味に...
-
巨大なテキストの最終行を取得...
-
fopen64について
-
python renameについて
-
ファイルの存在の有無を確かめ...
-
PerlでのUseless use...
-
AutoNts
-
ファイル全てを .xlsm に変更し...
-
perlでCSV形式ファイルのア...
-
複数ファイルを1つにするシェ...
-
csvファイルの横方向への改行に...
-
Perlで特定行から特定行までを...
-
バッチファイルの作り方(CSV→...
-
VBAでCSVファイルの特定行を書...
-
C言語で特定の行を抽出する方法...
-
C言語のバイナリモードでのfsca...
-
close()で例外が投げられる理由
-
MATLAB グローバル変数の宣言
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
window.open でのファイル指定方法
-
fgets で値が取得できない
-
VBA テキストファイルを読み取...
-
ファイル全てを .xlsm に変更し...
-
csvファイルの横方向への改行に...
-
Firefox で file:// で始まる U...
-
VBAコードを張り付け後のエクセ...
-
python renameについて
-
JSP URLに表示される拡張子 .jsp
-
foreach内での変数の扱い?
-
HTMLのフォームで画像と文...
-
drtファイルはどうしたら開...
-
PerlでのUseless use...
-
MySQLにバイナリデータを正常に...
-
複数ファイルを1つにするシェ...
-
テキストファイルの高速な読み...
-
巨大なテキストの最終行を取得...
-
並び方、
-
ファイルの存在の有無を確かめ...
-
Perl の「stringify」の意味に...
おすすめ情報