• ベストアンサー

複数の添付ファイルの受信について

toginoの回答

  • ベストアンサー
  • togino
  • ベストアンサー率75% (97/129)
回答No.1

参考 URL にあげられたプログラムを書いた本人でないので 正しい回答になるか分かりませんが、 とりあえず分かる範囲でお答えしようと思います。 参考 URL にあるプログラムでは $part[$m] = Split("\r\n--".UrlEncode($a_temp[1])."-?-?", $honbun[$m]); とありますので、複数添付ファイルがあったとしても $part[$m][0] 1つ目の添付ファイル $part[$m][1] 2つ目の添付ファイル ... と、正しく複数のパーツに分割しているように見受けられます。 1つ疑問なのは、書き込みしているファイル名が $a_file = Fopen($hozonDir.$filename[$m], "w+b"); と $filename[$m] の1つに限定されている点です。 つまり、複数の添付ファイルがあったとしても、 1つのファイルに追記する形で書き込んでいるようです。 もし、複数のファイルに分けて保存したい場合 foreach ($part[$m] as $dummy10) { List($x_head[$m], $x_body[$m]) = Split("\r\n\r\n", $dummy10, 2); の直後に //---- ファイル名の取得-- 以下の if 文まるごと移動させた上で if (eregi("name=\"?([^\"\n]+)\"?",$honbun[$m], $a_filename)) { の $honbun[$m] を $x_head[$m] に書き換えれば $part[$m][] 配列の各パーツごとにファイル名を取得して、 そのファイル名で保存するようになると思います。 ただ、添付ファイルが入れ子になっていたり 添付されるファイルの種類の組み合わせによって いろいろ考慮しないといけない点も多いので ちゃんとした添付ファイルの処理をしようと思うと かなり複雑になると思います。 外しているとは思いますが、よろしくお願いします。 # プログラムを書かれた本人様に伺うのが一番かと(^^;)

ka_zu57
質問者

お礼

ご返答ありがとうございました☆ 上記を参考にチャレンジしてみます。 作者さまへも連絡を取ってみるようにします

関連するQ&A

  • file_put_contentsで複数画像の取得

    自分のサーバー(myserver.com)上で「他サイトにある画像をダウンロードできるPHP」=【download.php】を組みました。 <?php $url = 'http://yoso.jp/qt6w8d.jpg'; $data = file_get_contents($url); file_put_contents('./image/photo_1.jpg',$data); ?> 上記では、http://yoso.jp/にある1つの画像をphoto_1.jpgとリネームして、myserver.com/image/ ディレクトリに画像ファイルとして収納できます。 **************************************************************** 次に、 1001.csv 1002.csv 1003.csv など複数のCSVファイルを作り、自分のサーバーのmyserver.com/csv_file/ ディレクトリに保管しました。 それぞれのCSVファイルの中には、yoso.jpにある画像のURLが、カンマ区切りで複数書かれています。 例【1001.csv】 中身 (yoso.jp にある 複数(今回3つ)の画像のURLが記載) http://yoso.jp/qt6w8d.jpg,http://yoso.jp/dve4k.jpg,http://yoso.jp/4m2fl3.jpg, 尚、このCSVファイルもスクレイピンクで自作しているため必要であれば ""で囲むように改良することも可能です。 "http://yoso.jp/qt6w8d.jpg","http://yoso.jp/dve4k.jpg","http://yoso.jp/4m2fl3.jpg", 上記のcsvファイルを用意した後、下記のような【get.php】を組みました。 <?php $id=$_SERVER['QUERY_STRING']; $csv_url = "http://myserver.com/csv_file/"; $csv_url .= $id ; $csv_url .= ".csv"; $file_jpg = file_get_contents( $csv_url ); echo $file_jpg; ?> この【get.php】は、http://myserver.com/get.php?id=1001 とクエリーでcsv名を指定すると、1001.csvにある画像URL(1001.csvの場合3つ)をPHP上に表示(echo)できます。 ************************************************************** やりたいこと 【download.php】と【get.php】に記載したソースと組み合わせて、csvファイルに書いてある複数の画像をすべてサーバーに取り込みたいです。 可能であればそれぞれの画像名をphoto_1.jpg photo_2.jpg photo_3.jpg のような形でリネームし保存できればと考えていますが、file_put_contentsにて、複数ファイル指定で動作させる方法がわかりません。 どのようにすればいいかご教示戴きたくお願いいたします。

    • ベストアンサー
    • PHP
  • DVD形式のファイルを・・・

    DVD形式にするために参考URLでファイルを作ったのですが。 ​http://www.best-info.jp/s/divx_02/index.html   ←参考 URL 1枚のDVDに複数の話を入れるにはどうすればいいのでしょうか? ご回答よろしく御願いします

  • 複数ファイルを圧縮するスクリプト

    http://q.hatena.ne.jp/1123181645 上記リンクのURLに「Windowsでフォルダ内にある複数の ファイルを個別にZip圧縮するスクリプトを組みたい」 との質問があり、返答のなかに回答のスクリプトがありますが、 このスクリプトを「複数ファイルを個別にZIP圧縮する」のではなく、「複数ファイルを纏めてひとつのZIPファイルに圧縮する」に 変更するスクリプトをどなたか教えて頂けますでしょか。 すいませんが宜しくお願いします。

  • 複数のファイルを読み込む

    htmlで作成したページに他で作ったphpファイルを複数表示させたいです。 そして、自動で10件ごとに次のページになるようにしたいです。 欲を言えば ... ...9件目 ...10件目 ≪back | 1 | 2 | 3 |next≫ の様に表示させたいです。 今まで他のphpを表示させたい時は <? include("xxx.php"); ?> を使いphpファイルを表示させていたのですが、これを応用すれば出来ますか? 全く方法が分からないのでどなたかお助け下さい。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • 添付ファイルの受信(JPEG)

    OSがXPのSP1す。メーラーはOE6です。 ワードやエクセルの添付ファイルは自動で開かないのですが、JPEGはメッセージの下の方に画像が自動で開いています。過去の質問(http://okweb.jp/kotaeru.php3?q=1121158)見ると仕様のようですが、ウィルスを考えた場合、このままではまずいですよね。どうしたらよいのでしょうか?

  • 「複数のPHPファイルを上から順に15秒ごとに読み

    「複数のPHPファイルを上から順に15秒ごとに読み込む」ようなPHPファイルが欲しいです。 それをcronで定期的に実行したいのですが、どうしてもエラーが出てしまい上手く動きません。 <?php ini_set('display_errors', 1); error_reporting(-1); set_time_limit(0); $list = [ 'http://xxx.com/file1.php', 'http://xxx.com/file2.php', 'http://xxx.com/file3.php', 'http://xxx.com/file4.php', 'http://xxx.com/file5.php', 'http://xxx.com/file6.php', 'http://xxx.com/file7.php', 'http://xxx.com/file8.php', 'http://xxx.com/file9.php', 'http://xxx.com/file10.php', ]; foreach ($list as $url) { $ch = curl_init(); curl_setopt_array($ch, [ CURLOPT_URL => $url, CURLOPT_RETURNTRANSFER => true, ]); sleep(15); curl_exec($ch); } ?> いちおう初心者ながらに書いてみたのですが、どこが悪いのかを教えてください。

    • 締切済み
    • PHP
  • 複数ファイルの同一修正方法

    htmlファイルが100ファイル以上あり、同一の文字列を同一の内容に変更したいのです。 文字列修正はマクロで出来ますが、複数のファイルを同時に開くことが出来ずに1ファイルづつ開いてマクロ実行で文字列修正しています。エディタは秀丸エディタを使用しています。 ヘルプに載っている複数ファイルを開く方法でオープンできませんでした。 もっと簡単に修正する方法を教えて下さい。 宜しくお願いします。

  • こんなソフトウェアを探しています。(複数のファイルからテキスト検索)

    こんにちは。PHPファイルのコードを編集しています。フリーのダウンロードしてきたPHPファイルなのですが、ブラウザ上に表示されるテキスト部分の色やサイズ、文章などを変更したいのですが、ファイルがたくさんありすぎててもどこにあるのか見当がつきません。そこで複数のテキストファイルの中から特定のキーワードを検索できるプログラムを探しています。知ってたらぜひ教えてください。お願いします。

  • 返信 添付ファイル自動添付

    送られてきた添付ファイルを添付されたまま全員に返信したいのですが、どのように設定したらよろしいでしょうか。 契約書等を複数名で手入れをしあうとき、自分の番になると修正して全員に返信します。 そのとき、自分では手直しする箇所がない場合、「私は特に修正ないです」とメールで書いて、添付ファイルをそのまま送れると間違いがないし楽なのですが。

  • Outook受信メの添付がURLエンコードされる

    いつも大変参考にさせて頂いております。 本日の3時過ぎから、受信したメールの 添付ファイル名の一部(全て後半部分)がURLエンコードされてしまう。 URLエンコードというのは、HPなどでエンコードサイトなどを参考に辿り着きました。 今後も起きてくると、ファイル名を都度直すことも大変なので、対処・分かれば原因なども教えて頂けると幸いです。 Outlook2019 ビルド 12624.20466 Windows10 pro 1909 ビルド18363.1082 受信ファイルは xls、zip、pdf  よろしくお願いいたします。