Si prega di consultare la descrizione e il suggerimento seguenti e ottenere facilmente la risposta!
Descrizione:
In realtà, come molti di quelli hanno consigliato di aggiungere/sostituire la seguente riga nel file (application/config/mimes.php):
'xlsx' => array('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/zip'),
Ma ho capito che in CodeIgniter Versione 2.2. * il problema è un po 'diverso! Hanno aggiunto che la linea già, ma ha dimenticato di aggiungere il seguente "file_type" ==> 'application/vnd.ms-excel'
'xlsx' => array('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/zip', 'application/vnd.ms-excel'),
Così l'aggiunta di quanto sopra 'application/vnd.ms-excel' nell'array del tipo di file xlsx, consentitemi di caricare i file .xlsx!
Suggerimento:
Ogni volta che si ottiene il seguente errore, su CodeIgniter piattaforma, e il caricamento dei file:
Il tipo di file che si sta tentando di caricare non è permesso.
fare quanto segue nel metodo di caricamento del controller,
var_dump($this->upload->data());
E vi darà una vasta gamma, che si può avere un'idea da questo link. (Si prega di vedere la fine di quella pagina) . In quell'array puoi ottenere qual è il vero mime_type del file che stai tentando di caricare ma che non ti sta caricando.
Risposta:
Nel mio caso, la mia estensione del file è stato, .xlsx, e il tipo MIME era application/vnd.ms-excel, che non è stato aggiunto nella
'xlsx' => array('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/zip'),
Quindi l'ho aggiunto manualmente e dopo questo funziona VERRY BENE !!!
La stessa cosa è accaduta al caricamento di CSV ancora una volta, quando ho controllato l'estensione del file è .csv ma il tipo MIME era text/plain, quando ho aggiunto alla seguente riga:
'csv' => array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel');
e salvato come segue,
'csv' => array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel', 'text/plain'),
Funziona come un fascino! : D Provalo, se trovi qualcosa di nuovo nei passaggi precedenti, per favore commenta qui !!! Quindi, sperando che questo possa essere utile a tutta la comunità di CodeIgniter, l'ho postato per un po 'di tempo!
migliori saluti ragazzi,
Randika
hmmm, potrebbe risolvere il problema, ma permetterebbe ai file .zip che non sono file xlsx di essere caricati, se non erro. –
Sì, l'ho pensato inizialmente, ma CI esegue un controllo dell'estensione del file e del tipo mime, quindi se provi a caricare un file zip, perché l'estensione è zip e non xlsx, genera un errore. Ho anche aggiunto le seguenti righe al file mimes.php per il lavoro che ho svolto: 'slk' => 'text/plain', 'xlsx' => array ('application/vnd.openxmlformats -officedocument.spreadsheetml.sheet ',' application/zip '), ' ods '=>' application/octet-stream – Stevo
che dire di un file zip con estensione xlsx (e non un file xlsx valido)? –