2017-10-13 46 views
0

我知道這裏有類似的問題,但我的問題是,我還沒有看到有一個答案我的,我希望用戶上傳多張照片在一個職位,所以我的問題是我必須添加更多的行我的數據庫中存儲的每個文件名,如果是什麼,如果我有10行,用戶要上傳11張照片會發生什麼,我只是想知道Facebook的如何做出可能如何將多個文件上傳名稱保存到數據庫?

if(count($_FILES['uploads']['filesToUpload'])) { 
    foreach ($_FILES['uploads']['filesToUpload'] as $file) { 

     //do your upload stuff here 
     echo $file; 

    } 
} 

我可以上傳多張照片和舉措到文件夾,但我怎麼能存儲他們的所有名稱在我的分區

+0

https://www.w3schools.com/php/php_mysql_insert.asp –

+0

我不能說話,爲什麼你不能添加更多的10行?,爲什麼是邏輯。你有困惑的列到列嗎? –

+0

我會建議爲你的上傳創建一個不同的表格。你可以有三列:id,user,uploaded_file – hungrykoala

回答

0

這是一個例子,你可以自己調整它。

<form action="file_reciever.php" enctype="multipart/form-data" method="post"> 
<input type="file" name="files[]" multiple/> 
<input type="submit" name="submission" value="Upload"/> 
</form> 

的PHP雲(file_reciever.php):

<?php 
    if (isset($_POST['submission'] && $_POST['submission'] != null) { 
     for ($i = 0; $i < count($_FILES['files']['name']); $i++) { 
      //Get the temp file path 
      $tmpFilePath = $_FILES['files']['tmp_name'][$i]; 

      //Make sure we have a filepath 
      if ($tmpFilePath != "") { 
       //Setup our new file path 
       $newFilePath = "./uploadFiles/" . $_FILES['files']['name'][$i]; 

       //Upload the file into the temp dir 
       if (move_uploaded_file($tmpFilePath, $newFilePath)) { 

        //Handle other code here 

       } 
      } 
     } 
    } 
?> 

我希望它能幫助。

2

所以,如果我理解正確的,你只需要獲得當前登錄的用戶的id d然後有一個photos表,其中至少包含照片的路徑和用戶的id作爲外鍵。這樣,您可以根據需要爲單個用戶添加儘可能多的照片。

1

這將是,就像你意識到的,一個壞主意。 您應該爲照片添加其他表格。

在該表中,您將存儲一張照片及其每個行中的帖子ID。你可以看看3NF

讓我知道你是否需要更多幫助。

相關問題