J'ai le code suivant:
$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);
}
Y a-t-il un problème avec mon code? Je reçois toujours le message de la commande die dans la dernière instruction if.
Toute aide serait appréciée.
Edit: Merci à Stanislav Agapov, j'ai trouvé les journaux de drupal. Le message est:
Le fichier .... / main_ROSE2106.JPG n'a pas pu être copié, car le répertoire de destination public: // galerii_imagini n'est pas configuré correctement.
Que dois-je faire pour le configurer correctement? J'ai défini dans / admin / config / media / file-system le chemin sites / default / files en tant que fichiers publics. Y a-t-il autre chose à régler?
Edit # 2: J'ai défini 777 pour l'ensemble de l'arborescence / sites / default / files.
/sites/default/files/galerii_imagini
?
file_copy
et appelée par ellefile_unmanaged_copy
en cas d'erreurs écrire des messages dans le journal système. Avez-vous consulté le rapport "Messages de journal récents"? Vous y trouverez très probablement une réponse ...