2011-10-04 118 views
0

我通過HTML表單將文件上傳到服務器,然後將HTML表單內容通過電子郵件發送給我自己。我可以將所有表單值存儲到像這樣的PHP變量...PHP從HTML存儲文件名並保存到變量

$name = strip_tags($_POST["name"]); 
$email = strip_tags($_POST["email"]); 
$phone = strip_tags($_POST["phone"]); 

但不能存儲以同樣的方式上傳文件的文件名。 ex ..

$uploadFile0 = strip_tags($_POST["uploadFile0"]); 

我正在使用循環將文件存儲到我的服務器。

$i = 0; 
    while(isset($_FILES['uploadFile'. $i])){ 
     echo 'item' . $i . 'present'; 
     $file_name = $_FILES['uploadFile'. $i]['name']; 
     $file_name = stripslashes($file_name); 
     $file_name = str_replace("'","",$file_name); 
     $copy = copy($_FILES['uploadFile'. $i]['tmp_name'], $folderPath . $file_name); 
     if($copy){ 
      echo "$file_name | uploaded sucessfully!<br>"; 
     }else{ 
      echo "$file_name | could not be uploaded!<br>"; 
     } 
     $i++; 
    }; 

基本上我想捕獲文件的名稱到一個變量並在電子郵件中回顯出來。我有一種感覺,我正在盯着答案,但我不能把它放在一起。先謝謝您的幫助!

+0

不file_name''$文件的名稱? – Alex

+0

PHP中上傳的文件**從不**出現在_POST數組中。他們只在_FILES中,所以你需要'$ _FILES ['uploadFile'] ['name']'。 –

回答

1

$_FILES['uploadFile'. $i]['name']不給你的文件的名稱?

或者只是搶到了第一個$_FILES['uploadFile0']['name']

+0

就是這樣。我只需要創建像這樣的變量$ uploadFile0 = $ _FILES ['uploadFile0'] ['name']; \t $ uploadFile1 = $ _FILES ['uploadFile1'] ['name']; \t $ uploadFile2 = $ _FILES ['uploadFile2'] ['name']; – mkrisch