AjaxForm + FormIt и отдача файла
Всем привет!
Возникла задача:
«После заполнения полей и прохождения валидации, стартует скачка файла.»
логично, что нужно использовать хуки FormIt (download_hook)
хук:
при вызове хука как отдельный сниппет на странице, скачка начинается.
Вызов как хука FormIt — не работает.
Консоль браузера пуста.
на почту письма не приходят.
Скорее всего дело в заголовка header();
Кто нибудь делал подобное? или подскажите как лучше, что да как?
Возникла задача:
«После заполнения полей и прохождения валидации, стартует скачка файла.»
логично, что нужно использовать хуки FormIt (download_hook)
[[!AjaxForm?
&snippet=`FormIt`
&form=`down_price.tpl`
&emailTpl=`zvonok.sent`
&hooks=`spam,email,download_hook`
&emailSubject=`Скачали прайс-лист`
&emailTo=`[[++emailsender]]`
&validate=`phone:required`
&validationErrorMessage=`В форме содержатся ошибки!`
&successMessage=`Сообщение отправлено!`
]]хук:
$file = 'file.zip';
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
return true;
}при вызове хука как отдельный сниппет на странице, скачка начинается.
Вызов как хука FormIt — не работает.
Консоль браузера пуста.
на почту письма не приходят.
Скорее всего дело в заголовка header();
Кто нибудь делал подобное? или подскажите как лучше, что да как?
Комментарии: 4
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Хук, соответственно, не нужен.
чет забыл про af_complete совсем
fileDownload
в коде пришлось поправку сделать
через атрибут — не реагировал
все заработало, спасибо за идею!