У меня есть контактная форма, в которой размещаются сообщения mailchimp, но в некоторых случаях я также хочу, чтобы она отправила электронное письмо.
Я рассмотрел возможность изменения <form action="...
от mailchimp на мою собственную страницу, содержащую нечто похожее на следующее:
<form action="mailchimp_url..." ...> <? foreach($_POST as $name=>$value){?> <input type="hidden" name="<? echo $name;?>" value="<? echo $value;?>"> <? }?> <? //mail the stuff I want somewhere else ?>
Тогда я мог бы просто выполнить это на pageload с помощью javaScript.
Проблема в том, что, если это работает, она будет зависеть от JavaScript или потребует дополнительного нажатия кнопки для пользователя.
Есть ли более элегантный способ сделать это?
Вы можете сначала отправить на свой собственный сервер
<form action="your_path" ...>
Затем используйте cURL для отправки тех же данных в mailchimp
Вот хороший пример того, как
этот код будет выполнен, если вы придете из другой формы, отправленной. Тогда ваш $ _POST будет разобрать. Но поскольку $ _POST существует только в том случае, если форма размещена, вы не можете использовать ее раньше. Что вы хотите сделать точно? Если вы хотите добавить скрытый ввод в свой формат шрифта определенных параметров, вы можете использовать $ _GET или, возможно, $ _SESSION