Problema in upload file csv

Buonasera Eugenio,
dovrei aggiungere dei record ad una tabella partendo da dati contenuti in un file csv.
L'idea è quella di creare una tabella di appoggio per le informazioni del file, contenente un campo varchar configurato di tipo "generic_file", a cui agganciare un hook al caricamento che legga il file ed inserisca i record nella tabella opportuna.
All'inserimento del file ottengo però questi errori:

[28-Feb-2020 16:46:38 Europe/Rome] PHP Warning: move_uploaded_file(dadabik_tmp_file_ALY_SERVICE_5.csv): failed to open stream: Permission denied in /Applications/XAMPP/xamppfiles/htdocs/dadabik2/include/business_logic.php on line 0
[28-Feb-2020 16:46:38 Europe/Rome] PHP Warning: move_uploaded_file(): Unable to move '/Applications/XAMPP/xamppfiles/temp/phpjBAYSf' to 'dadabik_tmp_file_ALY_SERVICE_5.csv' in /Applications/XAMPP/xamppfiles/htdocs/dadabik2/include/business_logic.php on line 0


Nel file config.php è configurata sia la directory di upload (con permessi 777 nel filesystem) sia il tipo di file .csv che è consentito.

Ti chiedo innanzi tutto se è la strada giusta per realizzare la richiesta e come risolvere questi errori.

Grazie per la collaborazione.
Saluti.

You are using DaDaBIK version 9.3-Monterosso enterprise, installed on 05-29-2019 (installation code: 141585bfd84529d050), the latest version of DaDaBIK is 9.3-Monterosso released on 05-29-2019

You are runnning the last release of DaDaBIK

PHP Version: 5.6.15

mysql version: 5.5.5-10.1.9-MariaDB

Web server: Apache/2.4.17 (Unix) OpenSSL/1.0.1q PHP/5.6.15 mod_perl/2.0.8-dev Perl/v5.16.3

Client: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:67.0) Gecko/20100101 Firefox/67.0
 

eugenio

Administrator
Staff member
Buongiorno Claudio,
interessante, non avevo mai pensato a questo modo di utilizzare hook + upload. Non ho mai provato ma credo che possa funzionare se scrivi correttamente tutto il codice che serve per leggere il CSV caricato nella tabella d'appoggio e inserire i dati nella tabella finale.

L'errore che ricevi sembra un semplice errore relativo ai permessi, controllerei nuovamente che $upload_relative_url e $upload_directory siano corrette e che i permessi siano impostati correttamente (non dovrebbe nemmeno servire 777 in realtà, che può essere pericoloso, 755 è più che sufficiente se tutto è impostato correttamente).

In generale l'upload di file funziona?

Buona giornata,
 
Top