Tôi có đoạn mã sau:
$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ó cái gì đó sai với mã của tôi? Tôi luôn nhận được thông báo từ lệnh die bên trong câu lệnh if cuối cùng.
Bất kỳ trợ giúp sẽ được đánh giá cao.
Chỉnh sửa: Nhờ Stanislav Agapov, tôi đã tìm thấy nhật ký từ drupal. Tin nhắn là:
Không thể sao chép tệp .... / main_ROSE2106.JPG, vì thư mục đích công khai: // galerii_imagini không được cấu hình đúng.
Tôi nên làm gì để cấu hình chính xác? Tôi đã đặt trong / admin / config / media / file-system các đường dẫn site / default / files thành các tệp công khai. Có cái gì khác để thiết lập?
Chỉnh sửa # 2: Tôi đặt 777 cho toàn bộ cây / trang web / mặc định / tệp.
/sites/default/files/galerii_imagini
?
file_copy
và được gọi bởi nó hoạt độngfile_unmanaged_copy
trong trường hợp lỗi ghi thông điệp vào nhật ký hệ thống. Bạn đã xem báo cáo "Thông điệp nhật ký gần đây" chưa? Nhiều khả năng bạn sẽ tìm thấy câu trả lời ở đó ...