如何在laravel和angular 7中上传多个文件?

时间:2019-03-30 06:52:52

标签: laravel-5 file-upload angular7

  

我正在使用带有laravel的angular 7后端。我有一种形式   在这里我有一个下拉列表的公司。用户将选择   我正在显示一个html表的特定公司onchange公司   以及特定公司的员工列表。

html表格的代码:

<table *ngIf="allemp" >
<tr>
    <th>ID</th>
    <th>Name of Employee</th>
    <th>Attached Payslip</th>
</tr>
<tr *ngFor="let data1 of allemp">
    <td>{{data1.id}}</td>
    <td>{{data1.comp_empl_name}}</td>
    <td><input type="file" (change)="onFileChangeInfo($event)" multiple></td>
</tr>
</table>

如您在上一个td中所看到的,我正在输入类型文件,我希望从该文件中将不同薪水单的每个员工添加到数据库中。

我在ts文件中获取多个文件的功能:

  onFileChangeInfo(event) {
    console.log(event);
      const reader = new FileReader();
        if(event.target.files && event.target.files.length > 0) {
          const [file] = event.target.files;
          reader.readAsDataURL(file);
            console.log(file);
          reader.onload = () => {
            this.myForm1.patchValue({
              'inv_blob': reader.result,
              'inv_pdf':file.name,
          });
            this.cd.markForCheck();
          };
      }
  }

console.log(file)上,我可以获取每个文件。但在后端api中,只能访问最后一个文件。

我无法将后端获取的所有文件都放入console.log(file)。

$blob_payslip = $request->inv_blob;
                $filename_contract =$request->inv_pdf;
                $paySlipUpload = CapsMaster::UploadFile1($blob_payslip,$this->payslipfolder,'abc',$filename_contract);
                $payslip_data->inv_pdf='payslips/'.$billing_com.'/'.$paySlipUpload;

我尝试了foreach循环,但对我不起作用。我想将每个选定文件的不同行存储到数据库中。请为我提供帮助。如有可能,请给我发送一些链接。因为我在Google上搜索了此问题,但没有得到正确的答案。

0 个答案:

没有答案