Как я могу сделать эквивалент отправки формы дважды с PHP? - PullRequest
2 голосов
/ 15 августа 2010

У меня проблема с формой. Мне нужно, чтобы он выполнял два действия одним кликом. Я читал, что лучшим решением является серверный скрипт, но мои знания PHP довольно ограничены, поэтому я очень признателен за любую помощь.

Мне нужно выполнить два действия:

  1. Запустить скрипт, который загружает файл и отправляет электронное письмо (action="uploader.php")
  2. Направьте пользователя на платежный шлюз PayPal (action="https://www.paypal.com/cgi-bin/webscr")

На мой взгляд, проблема в том, что у меня нет контроля над сценарием PayPal, но он, очевидно, берет некоторые данные из формы (например, количество, концепция и т. Д.), Поэтому добавление простого перенаправления в uploader.php недостаточно.

Что ты думаешь? Как я мог решить это?

Спасибо!

ОБНОВЛЕНИЕ: я постараюсь опубликовать поток действий пользователя:

  1. пользователь заполняет форму и добавляет файл для загрузки
  2. Первое действие формы: файл загружен и отправлено электронное письмо (action="uploader.php")
  3. Действие 2-й формы: пользователь попадает в форму оплаты PayPal (action="https://www.paypal.com/cgi-bin/webscr")
  4. Когда покупка завершена, пользователь попадает на страницу подтверждения покупки.

Ответы [ 2 ]

2 голосов
/ 15 августа 2010

Ваш uploader.php должен показать новую форму PayPal (или ту же самую) пользователю и отправить ее с помощью javascript на dom ready. Не забывайте и о пользователях, не поддерживающих JavaScript.

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="myForm">
  <!-- obviously hidden input's -->
  <script type="text/javascript">
    window.onload = function(){
      document.getElementById("myForm").submit();
    }
  </script>
  <noscript><input type="submit" value="Continue to Paypal!" /></noscript>
</form>
0 голосов
/ 15 августа 2010

Вы можете отправить форму на submit.php, загрузить свой файл, выполнить действие по электронной почте, а затем использовать CURL для отправки своих данных в PayPal.

На этом сайте приведен пример отправки данных в PayPal через CURL / PHP:

http://curl.phptrack.com/forum/viewtopic.php?p=9643&sid=5cc0c394df6efcf73772273846430fbe

...