Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

272
Visualizações
la solicitud para obtener el último archivo en el formulario tiene entradas rellenadas por transferencia de datos, laravel

en primer lugar, no sé si es legal hacer esto, pero lea esta pregunta para entenderme mejor.

como leyó en la pregunta, tengo problemas para insertar nuevos archivos en una entrada, sabía que obtenía solo el último archivo debido a que los introduje en la lista de archivos de entrada. así que cambié empujando de esto: ( que funcionaba, pero solo en la última entrada en el formulario )

 function inputImage(quode, f){ let list = new DataTransfer(); list.items.add(f); let img = list.files; document.querySelector("#imageUploader_"+quode).files = img; }

a esto:

 function inputImage(quode, f){ document.querySelector("#imageUploader_"+quode).files.push(f); }

pero me sale este error

document.querySelector(...).files.push no es una función

lo entiendo de esta respuesta

También he probado esto

 function inputImage(quode, f){ document.querySelector("#imageUploader_"+quode).files.add(f); }

pero entiendo esto

TypeError: document.querySelector(...).files.add no es una función

el objeto de archivo se ve así (desde la consola):

 File { lastModified: 1642515255138 lastModifiedDate: Tue Jan 18 2022 17:14:15 GMT+0300 (GMT+03:00) {} name: "[(33),12,2314,100,45].jpeg" size: 8115 type: "image/jpeg" webkitRelativePath: "" [[Prototype]]: File }

la lista de archivos:

 FileList {length: 0[[Prototype]]: FileList}

EDITAR : ver esto puede ayudar

y esta es una documentación:

  1. Transferencia de datos de Mozilla
  2. Lista de archivos de Mozilla
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

el motivo no estaba relacionado con la transferencia de datos ni siquiera con JS. el problema de que no estaba administrando la matriz de solicitudes a la perfección, por lo que solo obtengo el archivo de la última entrada, así que cambié la solicitud de este

 public function store(Request $request){ $gen = ['_token','examHash','name','duration','bornline','deadline','note','hardness','vip','examType','published']; $questions = $request->except($gen);//questions $data = []; $count = 0; foreach($questions as $k => $i){ if(str_starts_with($k, 'ex_')){ $quode= ''; $ex = ''; $type = ''; $quode = str_replace("ex_", "", $k); $ex = $i; $type = $questions['questionType_'.$quode]; $count += 1; } $data += [$quode => []]; if(str_ends_with($k, $quode)){ // check if the $k is unnecessary element and skip it, add only needed data to $data array if((($type == "option" && (!str_starts_with($k, "label") && !str_starts_with($k, "single") && !str_starts_with($k, "choice"))) || ($type == "label" && (!str_starts_with($k, "option") && !str_starts_with($k, "single"))) || ($type == "single" && (!str_starts_with($k, "label") && !str_starts_with($k, "option") && !str_starts_with($k, "choice"))))){ $data[$quode]['sort'] = $count; $data[$quode] += [str_replace("_".$quode, "", $k) => $i]; } if(str_starts_with($k, "image")){ $questions['image_'.$quode]->storeAs('ques', $quode.$ex); } } } $data = array_merge(request()->only($gen), $data); dd($data); }

a esto

 foreach($questions as $k => $i){ if(str_starts_with($k, 'ex_')){ $quode= ''; $ex = ''; $type = ''; $image= ['']; $quode = str_replace("ex_", "", $k); $ex = $i; $type = $questions['questionType_'.$quode]; $image = $questions['image_'.$quode]; $count += 1; } $data += [$quode => []]; if(str_ends_with($k, $quode)){ // check if the $k is unnecessary element and skip it, add only needed data to $data array if((($type == "option" && (!str_starts_with($k, "label") && !str_starts_with($k, "single") && !str_starts_with($k, "choice"))) || ($type == "label" && (!str_starts_with($k, "option") && !str_starts_with($k, "single"))) || ($type == "single" && (!str_starts_with($k, "label") && !str_starts_with($k, "option") && !str_starts_with($k, "choice"))))){ $data[$quode]['sort'] = $count; $data[$quode] += [str_replace("_".$quode, "", $k) => $i]; $data[$quode]['image'] = $image; $data[$quode]['image']->storeAs('ques', $quode.$ex); } } }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda