Ho il codice seguente:
$main_image = glob('main*.{jpeg,gif,png,jpg,JPEG,JPG,PNG}', GLOB_BRACE);
if (count($main_image) != 1)
die("Could not find main picture !");
$file_path = drupal_realpath($main_image[0]);
$file = (object) array(
'uid' => $userID,
'uri' => $file_path,
'filemime' => file_get_mimetype($file_path),
'display' => 1,
'filename' => $main_image[0]
);
// copy the file in the correct folder
$destination = "public://galerii_imagini/" . $file->filename;
if ($file = file_copy($file, $destination, FILE_EXISTS_REPLACE)) {} else {
die("Could not copy " . $file_path . " in " . $destination);
}
C'è qualcosa che non va nel mio codice? Ricevo sempre il messaggio dal comando die all'interno dell'ultima istruzione if.
Qualsiasi aiuto sarà apprezzato.
Modifica: Grazie a Stanislav Agapov, ho trovato i registri di Drupal. Il messaggio è:
Impossibile copiare il file .... / main_ROSE2106.JPG, poiché la directory di destinazione pubblica: // galerii_imagini non è configurata correttamente.
Cosa devo fare per configurarlo correttamente? Ho impostato in / admin / config / media / file-system il percorso sites / default / files come file pubblici. C'è qualcos'altro da impostare?
Modifica n. 2: ho impostato 777 per l'intero albero / siti / predefinito / file.
/sites/default/files/galerii_imagini
?
file_copy
e chiamata da essa funzionefile_unmanaged_copy
in caso di errori scrivere messaggi nel registro di sistema. Hai esaminato il rapporto "Messaggi di registro recenti"? Molto probabilmente troverai la risposta lì ...