Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

142
Vistas
Lea el archivo desde la entrada HTML <tipo de entrada = archivo> y guárdelo físicamente para enviarlo por correo electrónico

Estoy tratando de enviar un correo electrónico con un archivo adjunto, que el usuario puede seleccionar con la etiqueta HTML <input type=file> .

Mi idea era leer el archivo de la entrada con el Filereader de archivos y obtener el contenido y el tipo de nombre de archivo +. Con esta tres información puedo crear un nuevo archivo con el nombre de archivo + tipo y el contenido. Mi primera pregunta es:

¿Está bien este método o hay una manera más fácil de hacerlo?

A mi problema/segunda pregunta:

Este es mi código y todo funciona excepto escribir el contenido en el archivo creado (línea 3 del código PHP). Crea el archivo en la ruta correcta, pero el archivo siempre está vacío, pero el archivo selectedfile[0] no está vacío. probé con (.txt, .docx, .pdf)

Este es el valor del archivo selectedfile[0] si selecciono un archivo .pdf aleatorio: ingrese la descripción de la imagen aquí

Este es mi HTML:

 <input class="swal2-file" type="file" id=f_file>

Este es mi JavaScript:

 async function() { return new Promise((resolve, reject) => { var selectedfile = null; var email = $('#email').val(); var header = $('#header').val(); var content = $('#content').val(); var file = $('#files')[0].files[0]; if (file) { var reader = new FileReader(); reader.readAsText(file, "UTF-8"); reader.onload = function (evt) { resolve({ 'email': email, 'header': header, 'content': content, 'selectedfile': [evt.target.result, file.name] }); } reader.onerror = function (evt) { reject("error reading file"); } }else { resolve({ 'email': email, 'header': header, 'content': content, 'selectedfile': null }); } });

Con una publicación de Axios, envío los datos:

selectedfile = [0] filecontent, [1] filecontent de archivo de Filereader

a mi PHP-Backend.

Este es mi PHP:

 $content = json_decode($request->getContent()); $selectedfile = $content->selectedfile; file_put_contents("../storage/" . $selectedfile[1],$selectedfile[0]);
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda