簡體   English   中英

如何在 laravel php 中上傳多張圖片

[英]How to upload multiple image in laravel php

我正在嘗試在 laravel 中上傳多張圖片,但似乎只有一張圖片插入到數據庫中,我想知道如何上傳所有圖片而不僅僅是一張。

這是我的控制器

public function addProperty(Request $request){
        $data = $request->all();
        $pModel = new PropertyModel();
        
        return response()->json(["type"=>$pModel->addProperty($data,$request)]);
    }

這是我的看法

<h3>Gallery</h3>
        <div class="submit-section">
            <div id="selected-files"></div>
            <input type="file" name="files[]" multiple  onchange="Property.onImageUploadChange(event)" id="files" >
        </div>

這是我的模型

  public function addProperty($propertyData,$request){
        $db  = new Database;
        @session_start();
        $user = $_SESSION["user"];
        $propertyData["user_id"] = $user->user_id;
        unset($propertyData["_token"]);
        
        unset($propertyData["property_files"]);
        $res = $db->query($db->buildQuery($propertyData, $this->tableName)) or die(false);
        $lastID= $db->lastInsertID($res);
        $image = $request->file("property_files");
        $image->move(public_path('images'),$lastID.".jpg");
        return true;
    }

這段代碼可以幫助你! 我在后端工作並使用此功能:

public static function upload_image($image, $image_folder)
{
$image_new_name = time() . '_' . $image->getClientOriginalName();
$image_path = public_path('uploads\\' . $image_folder);
$image->move($image_path, $image_new_name);

return $image_folder . '/' . $image_new_name;
}

您可以創建一個SettingController並將其放在那里,然后在您的控制器中接收圖像數組並使用foreach循環將它們保存在您的服務器中,例如:

foreach($request->arrayImages as $image) {
     SettingController::upload_image($image, 'your folder name');
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM