PHP - создать файл из строки и прикрепить к электронной почте - PullRequest
1 голос
/ 30 марта 2011

У меня есть приложение, в котором пользователи могут присылать мне отзывы. Когда они делают это, различные данные из их системы публикуются в php-файл на моем сервере. Затем php-файл обрабатывает эти данные и отправляет мне электронное письмо с этими данными через mail (). Сейчас все данные просто собраны в электронное письмо в формате HTML.

Что я хочу сделать, это взять некоторые из опубликованных данных, преобразовать их в файлы и добавить их в качестве вложений в электронное письмо. Я знаю, как добавлять файлы в виде вложений с помощью mail (). Я просто не могу придумать, как сначала создать файлы. Я думал о том, чтобы просто использовать fopen () и fwrite (), но что, если два пользователя отправляют отзыв одновременно, все файлы будут испорчены, поскольку у них будет одинаковое имя для каждого пользователя. Я знаю, что у php есть функция временного файла, которая генерирует файл со случайным именем, но как мне тогда ссылаться на этот файл, чтобы добавить его в мои почтовые заголовки для mail (). Кроме того, функция временного файла не будет работать, потому что я хочу, чтобы каждый файл имел определенное имя при отправке мне.

Есть идеи, как этого добиться?

1 Ответ

1 голос
/ 30 марта 2011

Временные файлы создаются безопасно с tempnam.То, как вы будете звонить им, прикрепляя их к почте, состоящей из нескольких частей, не должно иметь никакого отношения к временному имени, которое вы даете фактическому файлу.Если это происходит в вашей реализации 'mail', покажите этот конкретный код, потому что он не должен быть таким.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...