Перейти к содержимому


Публикации fireharp

1 публикаций создано fireharp (учитываются публикации только с 29-Март 23)


#23136 Работа с файлами и рассылки

Отправлено от fireharp в 21 Апрель 2014 - 13:40 in Как это сделать

Есть следующая задача.

У нас есть ряд текущих предложений для Клиентов, которые хранятся в таблице Предложения.

Предложение это:
- тема
- описание
- до 3х прикрепленных файлов


Есть задача рассылки этих предложений всем или части Клиентов с возможностью персонализации сообщений.

Задачу решили следующим образом.
Сделали таблицу "Рассылка предложений", которая практически повторяет сами предложения и при этом является подтаблицей для Предложений и для Клиентов.

Сразу скажу, что все работает отлично!


Но есть одно "НО"!

Для того, чтобы прикрепить файлы к шаблону рассылки, эти файлы должны непосредственно быть прикреплены к самой записи той таблицы, шаблон, которой мы рассылаем, то есть таблицы "Рассылка предложений".

То есть для каждого клиента делается отдельная копия каждого файла, который высылаем, что является очевидным косяком в плане использования и загрузки диска сервера.


create_data_file_dirs(3181, $newid, $f_name1);
copy(get_file_path(3131,$ID, $f_name1), get_file_path(3181,$newid, $f_name1));
create_data_file_dirs(3191, $newid, $f_name2);
copy(get_file_path(3141,$ID, $f_name2), get_file_path(3191,$newid, $f_name2));
create_data_file_dirs(3201, $newid, $f_name3);
copy(get_file_path(3151,$ID, $f_name3), get_file_path(3201,$newid, $f_name3));
Вот этот код копирует файлы для каждой связки Клиентов с Предложениями через "Рассылку предложений".

Пробовали заменить copy на symlink или link, но тогда файл не открывается и возникает ошибка "File doesn't exist".

Как можно выйти из ситуации с засорением диска ненужными копиями файлов и при этом, выполнив задачу персонификации писем для клиентов?