0

1 つのファイルを電子メールで送信するスクリプトを作成しましたが、2 つのファイルを受け入れるように作成するように求められました。

これまでの私のスクリプトは次のようになります。

// Obtain file upload vars
$fileatt      = $_FILES['file1']['tmp_name'];
$fileatt_type = $_FILES['file1']['type'];
$fileatt_name = $_FILES['file1']['name'];


if (is_uploaded_file($fileatt)) {


  $file = fopen($fileatt,'rb');
  $data = fread($file,filesize($fileatt));
  fclose($file);

  $semi_rand = md5(time());
  $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";

  $headers .= "\nMIME-Version: 1.0\n" .
              "Content-Type: multipart/mixed;\n" .
              " boundary=\"{$mime_boundary}\"";

  $message = "This is a multi-part message in MIME format.\n\n" .
             "--{$mime_boundary}\n" .
             "Content-Type: text/html; charset=\"iso-8859-1\"\n" .
             "Content-Transfer-Encoding: 7bit\n\n" .
             $message . "\n\n";


  $data = chunk_split(base64_encode($data));

  $message .= "--{$mime_boundary}\n" .
              "Content-Type: {$fileatt_type};\n" .
              " name=\"{$fileatt_name}\"\n" .
              //"Content-Disposition: attachment;\n" .
              //" filename=\"{$fileatt_name}\"\n" .
              "Content-Transfer-Encoding: base64\n\n" .
              $data . "\n\n" .
              "--{$mime_boundary}--\n";

}

これらを頭の中で使用して、投稿できるようにしたいです。そのためにスクリプトを変更しようとしましたが、1 つのファイルしか取得できません。

// Obtain file upload vars
$fileatt2      = $_FILES['file2']['tmp_name'];
$fileatt_type2 = $_FILES['file1']['type'];
$fileatt_name2 = $_FILES['file1']['name'];
4

1 に答える 1

0

これで、HTML に 2 つの入力フィールドができました。

<input name="file1" type="file" />
<input name="file2" type="file" />

これがあなたのWOOPSです

// Obtain file upload vars
$fileatt2      = $_FILES['file2']['tmp_name'];
$fileatt_type2 = $_FILES['file1']['type'];
$fileatt_name2 = $_FILES['file1']['name'];

3つすべてを使用するように変更しますfile2

// Obtain file upload vars
$fileatt2      = $_FILES['file2']['tmp_name'];
$fileatt_type2 = $_FILES['file2']['type'];
$fileatt_name2 = $_FILES['file2']['name'];
于 2013-07-31T13:08:42.900 に答える