Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Произвольные поля покупателей - файл


Gann

Recommended Posts

Доброго утра!

 

Хотелось бы узнать, как можно вывести ссылку на загруженный пользователем файл?

Под файлом имеется ввиду произвольное поле: "Покупатели" - "Произвольные поля" - тип поля файл.

 

В админке на странице просмотра заказа временно вывел ссылку в таком виде:

<a href="/admin/index.php?route=tool/upload/download&token=<?= $token; ?>&code=<?php echo $custom_field['value'];?>">Скачать файл</a></td>

Токен - в контроллере.

 

Ссылка работает.

 

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

Надіслати
Поділитися на інших сайтах

По соображениям безопасности, файлы хранятся в папке недоступной из интернета. Доступ к ним возможен только через контроллер tool/upload, который доступен только из админки. Можно написать контроллер, который будет получать файлы без авторизации и положить его в фронтенд, но безопасность пострадает. 

  • +1 2
Надіслати
Поділитися на інших сайтах


В 25.10.2017 в 09:21, shalan сказал:

По соображениям безопасности, файлы хранятся в папке недоступной из интернета. Доступ к ним возможен только через контроллер tool/upload, который доступен только из админки. Можно написать контроллер, который будет получать файлы без авторизации и положить его в фронтенд, но безопасность пострадает. 

 

Других вариантов совсем нет?

Может какой-нибудь костыль можно придумать без снижения безопасности? 

Допустим, загруженный пользователей файл (на этапе оформления заказа), отправлять вложением в письме админу. Так ведь можно сделать? Я, правда, не представляю в какую сторону копать, чтобы это вложение прикрепилось к письму....

Надіслати
Поділитися на інших сайтах

3 минуты назад, Gann сказал:

Допустим, загруженный пользователей файл (на этапе оформления заказа), отправлять вложением в письме админу. Так ведь можно сделать? Я, правда, не представляю в какую сторону копать, чтобы это вложение прикрепилось к письму....

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

И да, это были не произвольные поля, а самодельная форма заказа.

  • +1 1
Надіслати
Поділитися на інших сайтах

Только что, mazein сказал:

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

Расскажете в каких файлах копать, что почитать, чтобы разобраться как к письму вложение прицепить? Сам уже начал гуглить :-)

Надіслати
Поділитися на інших сайтах

1 минуту назад, Gann сказал:

Расскажете в каких файлах копать, что почитать, чтобы разобраться как к письму вложение прицепить? Сам уже начал гуглить :-)

 

Я не знаю уровень Ваших знаний, чтобы что-то советовать.

Надіслати
Поділитися на інших сайтах

19 минут назад, mazein сказал:

Я не знаю уровень Ваших знаний, чтобы что-то советовать.

 

Около 1 из 5))

посмотрел сейчас mail.php (system/library) - там есть такая вот строчка:

protected $attachments = array();

Получается, в этот массив и нужно передать загруженный файл. В моём случае: шифрованый код файла это $order_info['shipping_custom_field']['1']

Далее не знаю что и от куда взять. 

 

Пусть переменная $pfile - это тот самый файл. Как ей присвоить значение "загруженый файл"?

$mail->AddAttachment("files/file1.pdf"); - прямо указать файл.

Но у нас же он кодированный. Запутался.

 

 

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.