Laravel-excel: No se pudo detectar ReaderType o WriterType

Creado en 20 may. 2019  ·  18Comentarios  ·  Fuente: Maatwebsite/Laravel-Excel

Recibo este problema en la importación de archivos de Excel en el servidor web. Pero esto funciona bien en el servidor local.

Maatwebsite \ Excel \ Excepciones \ NoTypeDetectedException
No se pudo detectar ReaderType o WriterType. Asegúrese de pasar una extensión válida al nombre de archivo o pasar un tipo explícito.

Por favor ayuda a resolver este problema.

more information needed

Comentario más útil

Como complemento:

Si nada funciona. Debe verificar su atributo de enctype de formulario HTML

así: enctype="multipart/form-data"

o

así: <form action="/action" method="post" enctype="multipart/form-data">

tienes que incluir este enctype o causará el siguiente error:

No ReaderType or WriterType could be detected. Make sure you either pass a valid extension to the filename or pass an explicit type

Todos 18 comentarios

Gracias por enviar el ticket. Lamentablemente, la información que proporcionaste está incompleta. Necesitamos saber qué versión usas y cómo reproducirla. Incluya ejemplos de código. Antes de que podamos recogerlo, consulte (https://github.com/Maatwebsite/Laravel-Excel/blob/3.1/.github/ISSUE_TEMPLATE.md) y agregue la información que falta. Para facilitar mucho el procesamiento de este ticket, asegúrese de verificar (https://laravel-excel.maatwebsite.nl/3.1/getting-started/contributing.html) y vuelva a verificar si completó la plantilla de problema correctamente. Esto nos permitirá recoger su boleto de manera más eficiente. Los problemas que sigan las pautas correctamente tendrán prioridad sobre otros problemas.

Creo que el mensaje de excepción es bastante claro. Asegúrese de que tenga una extensión, o sea explícito y pase un tipo de escritor/lector.

El error se ha resuelto. Estaba enviando una ruta de archivo incorrecta para importar.
Gracias por ser ayuda.

Me alegra saber que tu problema se ha resuelto. ¡Gracias por usar Laravel Excel!

El error se ha resuelto. Estaba enviando una ruta de archivo incorrecta para importar.
Gracias por ser ayuda.

El mismo error al que también me enfrento, ¿puede decir dónde ha mencionado la ruta del archivo? ya que estoy usando getRealPath() para obtener el archivo de carga y directamente usando Excel::importar

El error se ha resuelto. Estaba enviando una ruta de archivo incorrecta para importar.
Gracias por ser ayuda.

El mismo error al que también me enfrento, ¿puede decir dónde ha mencionado la ruta del archivo? ya que estoy usando getRealPath() para obtener el archivo de carga y directamente usando Excel::import

Gracias... resolví el problema, de la misma manera que mencionas

¿Alguien puede ayudarme con este problema? `No se pudo detectar ReaderType o WriterType. Asegúrese de pasar una extensión válida al nombre de archivo o pasar un tipo explícito.
Recibo este error después de realizar la implementación en Heroku.

¿Alguien puede ayudarme con este problema? `No se pudo detectar ReaderType o WriterType. Asegúrese de pasar una extensión válida al nombre de archivo o pasar un tipo explícito.
Recibo este error después de realizar la implementación en Heroku.

Cree un nuevo ticket con la plantilla de problema completa. La plantilla de problema es necesaria para que podamos ayudarlo y está disponible automáticamente para usted cuando abre un nuevo problema, no elimine el contenido de la plantilla de problema.

¿Alguien puede ayudarme a subir un archivo utf-8 csv? Me enfrento a este error: Maatwebsite \ Excel \ Exceptions \ NoTypeDetectedException
No se pudo detectar ReaderType o WriterType. Asegúrese de pasar una extensión válida al nombre de archivo o pasar un tipo explícito.

El mismo error al que también me enfrento, ¿puede decir dónde ha mencionado la ruta del archivo? ya que estoy usando getRealPath() para obtener el archivo de carga y directamente usando Excel::importar

Eso no funcionará, la ruta real no tiene una extensión, por lo que no podemos adivinar el tipo de lector. Pase la instancia del archivo cargado o el tipo de lector explícitamente

El problema es getRealPath()
Encontré la solución aquí:

https://stackoverflow.com/a/57106453/12226621

en vez de
$path = $request->file('mcafile')->getRealPath();

guárdelo en un temp , obtenga esa ruta y envíelo a la función de importación

$path1 = $request->file('mcafile')->store('temp'); 
$path=storage_path('app').'/'.$path1;  
$data = \Excel::import(new UsersImport,$path);

Simplemente puede pasar el archivo cargado: \Excel::import(new UsersImport, $request->file('mcafile'))

Si está en Cent OS, almacena el archivo temporal sin extensión. Así que simplemente cambie el nombre de un archivo temporal y agregue una extensión tmp .

Mi código como el siguiente está funcionando:

$tmpfname = request()->file('userfile')->getPathName();
rename($tmpfname, $tmpfname .= '.tmp');

Como complemento:

Si nada funciona. Debe verificar su atributo de enctype de formulario HTML

así: enctype="multipart/form-data"

o

así: <form action="/action" method="post" enctype="multipart/form-data">

tienes que incluir este enctype o causará el siguiente error:

No ReaderType or WriterType could be detected. Make sure you either pass a valid extension to the filename or pass an explicit type

Maatwebsite\Excel\Exceptions\NoTypeDetectedException

No se pudo detectar ReaderType o WriterType. Asegúrese de pasar una extensión válida al nombre de archivo o pasar un tipo explícito.

este es mi controlador:

{
        Excel::import(new MedicineImport(Auth::user()->id), request()->file('select_file'));

        return redirect('subscriber/medicine/imp')->with('success', 'All good!');
    }

y este es mi formulario:

<form method="get" enctype="multipart/form-data" action="{{ url('subscriber/medicine/imp/impEx') }}">
    {{ csrf_field() }}

<label>Select File for Upload</label>
        <input type="file" name="select_file" />
        <input type="submit" name="upload" class="btn btn-primary" value="Upload">
   </form>

por favor dígame por qué muestra este error y estoy usando 3.1

¡Hola, tengo un problema aquí en lo anterior! necesito su ayuda por favor.

El error se ha resuelto. Estaba enviando una ruta de archivo incorrecta para importar.
Gracias por ser ayuda.

puedes compartir aquí. ¿Qué has hecho?

¿Fue útil esta página
0 / 5 - 0 calificaciones