Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将多个文件附加到电子邮件中,laravel_Php_Laravel - Fatal编程技术网

Php 将多个文件附加到电子邮件中,laravel

Php 将多个文件附加到电子邮件中,laravel,php,laravel,Php,Laravel,我正在尝试将任何文件附加到电子邮件中,并将名称插入数据库。但当我在控制台中执行var_dump()时,我只显示一个文件 我有一个输入类型文件多个: <input type="file" name="adjunto" id="adjunto" multiple> 在插入到formData()之后 我将所有值发送到控制器: public function setIncidenciaPost(Request $request){

我正在尝试将任何文件附加到电子邮件中,并将名称插入数据库。但当我在控制台中执行var_dump()时,我只显示一个文件

我有一个输入类型文件多个:

<input type="file" name="adjunto" id="adjunto" multiple>
在插入到formData()之后

我将所有值发送到控制器:

public function setIncidenciaPost(Request $request){

$uploadedFile = [];
$filename = [];


// bloque para adjuntar fichero al email al abrirIncidencia


if($request->file('file') != ""){

    $uploadedFile[] = $request->file('file');
    $destino = public_path().'/subidas';

    for($i=0; $i<count($filename); $i++){
        $filename[] = $uploadedFile[$i]->getClientOriginalName();
    }

    for($i=0; $i<count($filename); $i++){
        $uploadedFile->move($destino, $filename[$i]);
    }
    

    echo var_dump($uploadedFile);
    exit();
}
//fin bloque


$resultado = \DB::table('incidencias')->insert([
                                                 'fecha_solicitud' => $request["fechaSolicitud"],
                                                 'fecha_respuesta' => $request["fechaRespuesta"],
                                                       'categoria' => $request["categoria"],
                                                       'asignadoA' => $request["tecnico"],
                                                     'solicitante' => $request["solicitante"],
                                                       'prioridad' => $request["prioridad"],
                                                          'estado' => "pendiente",
                                                          'asunto' => $request["asunto"],
                                                          'cuerpo' => $request["mensaje"],
                                                         'cliente' => $request["cliente"],
                                                         'adjunto' => $filename
                                                ]);

$idIncidencia = \DB::getPdo()->lastInsertId();

// ENVIA EMAIL A LOS TÉCNICOS CUANDO SE GENERA LA INCIDENCIA
$this->enviarEmail($request);
我可以显示我的文件。。。我不知道我做错了

谢谢你的帮助,对不起我的英语

更新

array(0) {
}
输入:

<input type="file" name="adjunto[]" id="adjunto" multiple>
控制器

public function setIncidenciaPost(Request $request){

    $uploadedFile = [];
    $filename = [];


    // bloque para adjuntar fichero al email al abrirIncidencia


    if($request->file('file') != ""){

        $uploadedFile[] = $request->file('file');
        $destino = public_path().'/subidas';

        for($i=0; $i<count($filename); $i++){
            $filename[] = $uploadedFile[$i]->getClientOriginalName();
        }

        for($i=0; $i<count($filename); $i++){
            $uploadedFile->move($destino, $filename[$i]);
        }
        

    }
    //fin bloque

    echo var_dump($filename);
        exit();


    $resultado = \DB::table('incidencias')->insert([
                                                     'fecha_solicitud' => $request["fechaSolicitud"],
                                                     'fecha_respuesta' => $request["fechaRespuesta"],
                                                           'categoria' => $request["categoria"],
                                                           'asignadoA' => $request["tecnico"],
                                                         'solicitante' => $request["solicitante"],
                                                           'prioridad' => $request["prioridad"],
                                                              'estado' => "pendiente",
                                                              'asunto' => $request["asunto"],
                                                              'cuerpo' => $request["mensaje"],
                                                             'cliente' => $request["cliente"],
                                                             'adjunto' => $filename
                                                    ]);

    $idIncidencia = \DB::getPdo()->lastInsertId();

    // ENVIA EMAIL A LOS TÉCNICOS CUANDO SE GENERA LA INCIDENCIA
    $this->enviarEmail($request);

}

您有一个文件,因为您正在上载一个文件。输入的名称应该用括号括起来,如:

这样,它应该以文件数组的形式出现


multiple
是指浏览器允许您一次选择多个文件。

这是否回答了您的问题@KamleshPaul感谢您的回复,我展示了它,但是没有,为什么我要用jQueryTanks获取所有文件以供您的回复@ZarkoAtanasov,但是,如果您能看到我的代码和我在更改您的回复代码后的回复。。。我在拉维尔做这件事。
<input type="file" name="adjunto[]" id="adjunto" multiple>
var fechaSolicitud = $("#fechaSolicitud").val();
    var categoria = $("#categoria").val();
    var prioridad = $("#Abrirprioridad").val();
    var telefono = $("#telefonoContacto").val();
    var asunto = $("#asunto").val();
    var mensaje = $("#cuerpoMensaje").val();
    var token = $("#token").val();
    var archivo = $("#adjunto").prop('files');
    var nombreArchivo = $("#adjunto").val();
    var formData = new FormData();

    formData.append('file', archivo);
    formData.append('fechaSolicitud', fechaSolicitud);
    formData.append('categoria', categoria);
    formData.append('prioridad', prioridad);
    formData.append('asunto', asunto);
    formData.append('mensaje', mensaje);
    formData.append('solicitante', codigoSolicitante);
    formData.append('cliente', codigoCliente);
    formData.append('tecnico', tecnicoSeleccionado);
    formData.append('telefono', telefono);

    $.ajax({
        url: "/setIncidencia",
        type: "POST",
        headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
        contentType: false,
        processData: false,   
        cache: false, 
        data: formData,
        success: function(data){
            $("#correcto").show();
            $("#correcto").append("Incidencia Generada");

            console.log(data);
public function setIncidenciaPost(Request $request){

    $uploadedFile = [];
    $filename = [];


    // bloque para adjuntar fichero al email al abrirIncidencia


    if($request->file('file') != ""){

        $uploadedFile[] = $request->file('file');
        $destino = public_path().'/subidas';

        for($i=0; $i<count($filename); $i++){
            $filename[] = $uploadedFile[$i]->getClientOriginalName();
        }

        for($i=0; $i<count($filename); $i++){
            $uploadedFile->move($destino, $filename[$i]);
        }
        

    }
    //fin bloque

    echo var_dump($filename);
        exit();


    $resultado = \DB::table('incidencias')->insert([
                                                     'fecha_solicitud' => $request["fechaSolicitud"],
                                                     'fecha_respuesta' => $request["fechaRespuesta"],
                                                           'categoria' => $request["categoria"],
                                                           'asignadoA' => $request["tecnico"],
                                                         'solicitante' => $request["solicitante"],
                                                           'prioridad' => $request["prioridad"],
                                                              'estado' => "pendiente",
                                                              'asunto' => $request["asunto"],
                                                              'cuerpo' => $request["mensaje"],
                                                             'cliente' => $request["cliente"],
                                                             'adjunto' => $filename
                                                    ]);

    $idIncidencia = \DB::getPdo()->lastInsertId();

    // ENVIA EMAIL A LOS TÉCNICOS CUANDO SE GENERA LA INCIDENCIA
    $this->enviarEmail($request);

}
array(0) {
}