如何使用 PHP 和 HTML 格式将文件名发送到我的 gmail?

How to send file name to my gmail with PHP and HTML form?

我想如果有人上传一个文件得到文件的名字到我的gmail.For例子,我希望你的电子邮件到达"FileName: background.jpg"

PHP代码:

<?php
   if(isset($_FILES['file_array'])){
      $name_array = $_FILES['file_array']['name'];
      $tmp_name_array = $_FILES['file_array']['tmp_name'];
      $type_array = $_FILES['file_array']['type'];
      $size_array = $_FILES['file_array']['size'];
      $error_array = $_FILES['file_array']['error'];
      for($i = 0; $i < count($tmp_name_array); $i++){
         if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
            header("Location:");
         }
      }
   }
?>

我试过这样:

<?php
   if(isset($_FILES['file_array'])){
      $name_array = $_FILES['file_array']['name'];
      $tmp_name_array = $_FILES['file_array']['tmp_name'];
      $type_array = $_FILES['file_array']['type'];
      $size_array = $_FILES['file_array']['size'];
      $error_array = $_FILES['file_array']['error'];
      $za = "mygmail@gmail.com";
      $od  = "Od: " . $Email . "\r\n";
      $info .= "FileName:" .$name_array. "\r\n";
         for($i = 0; $i < count($tmp_name_array); $i++){
           if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
              header("Location:");
              mail($za, $od, $info);
           }
        }
    }
?>

但是我刚收到邮件"FileName: array"。

HTML代码:

<form class="contact_form" action="../assets/php/postavi_oglas.php" method="post" enctype="multipart/form-data">
    <label>Izaberite fotografije:</label>
    <input class="contact_area" type="file" name="file_array[]">
    <input class="contact_area" type="file" name="file_array[]">
    <input class="contact_area" type="file" name="file_array[]">
    <input class="contact_area" type="file" name="file_array[]">
    <input class="contact_area" type="file" name="file_array[]">
    <input class="btn btn-theme" type="submit" value="Posalji Fotografije">  
</form>

它说数组因为它是数组并且需要在循环中

for($i = 0; $i < count($tmp_name_array); $i++){
    if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
    // a array      
     $fname=$name_array[$i];
     $info= "FileName:" .$fname. "\r\n";     
     header("Location:");
     mail($za, $od, $info);
       }

你这里有数组,因为你在邮件中发送了一个。就像下面的代码一样使用它,只通过电子邮件发送,而不是通过文件发送一封电子邮件。我更喜欢这种行为。

 $info = ''; 

 for($i = 0; $i < count($tmp_name_array); $i++){
    if(move_uploaded_file($tmp_name_array[$i], "uploads/".$name_array[$i])){
       $info .= 'Filename '.$i.': '.$name_array[$i]. "\r\n";
    }
 }

 mail($za, $od, $info);
 header("Location:");