我正在嘗試使用 vue 和 axios 創建多個文件上傳。我的問題是只有ine 文件會上傳到服務器。這是我使用的代碼:模板代碼<input type="file" name="images[]" multiple ref="images" @change="handleUpload()">JS代碼//this is part of the handleUpload() vue method.let formData = new FormData();for(let i;i < $refs.images.files.length; i++){ let file = this.$refs.images.files[i]; formData.append('image', file);}axios.post('/upload', formData, { header: { 'Content-Type': 'multipart/form-data' } }).then( (response) => console.log(response, response.data) ).catch( (error) => console.log(error) ); PHP服務器代碼// I'm using slim 4 and sirius upload to manage the file validation/uploaduse Psr\Http\Message\ResponseInterface as Response;use Psr\Http\Message\ServerRequestInterface as Request;use Psr\Http\Message\UploadedFileInterface;use Slim\Factory\AppFactory;use Sirius\Upload\Handler as UploadHandler;require __DIR__ . '/vendor/autoload.php';$app = AppFactory::create();$app->post('/platform/api/v1/compress', function(Request $request, Response $response){ $uploadHandler = new UploadHandler('/uploads'); $uploadHandler->addRule('extension', ['allowed' => ['jpg', 'jpeg', 'png']]); $result = $uploadHandler->process( $request->getUploadedFiles() ); // handle single input with single file upload if( $result->isValid() ){ $result->confirm(); $url = ["master_image_url" => "/uploads/".$result->name]; $response->getBody()->write(json_encode($url)); } return $response;});$app->run();如何上傳多個文件?也許我需要修改代碼?
使用vue axios和PHP上傳多個文件 - 只上傳一個文件
慕姐8265434
2023-08-05 19:26:33