Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Вопрос по перенаправлению


Автор: Denwer 27.3.2010, 17:16
НА  странице есть сформированя форма с невидимыми полями и кнопка Confirm order.


<form name="fec_confirmation" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="charset" value="iso-8859-1" />
<input type="hidden" name="page_style" value="Primary" />
<input type="hidden" name="custom" value="27a875c1568678e43e0e56c31b053797" />
<input type="hidden" name="business" value="[email protected]" />
<input type="image" src="confirm_order.gif" name="btn_submit" value="Confirm order"></div>

</form>

при нажатии сразу же переходим по action параметру. вот в чем вопрос, как между переходом сделать инсёрт

вот этих самых невидимых полей ?

то есть сначало инсёрт а потом уже "go to https://www.paypal.com/cgi-bin/webscr&quot; 

и при условии что не будет промежуточных страниц

Есть ли у нас какой то промежуток времени что выполнить какой то код между нажатием кнопки между тем когда мы уже окажемся на https://www.paypal.com/cgi-bin/webscr ?

Спасибо

Автор: ksnk 27.3.2010, 17:30
<form onsubmit="..."
это событие тикает перед настоящим сабмитом. Насчет можно или нет вставить новые элементы - imho, можно, однако я не пробовал.

Автор: Denwer 27.3.2010, 17:47
спс.. думал об этом. встречный вопрос...

можно ли как то яваскриптовой  (onsubmit="insert();")  функцией дернуть некий php скрипт который и выпонить то всю работу ?


Автор: bars80080 27.3.2010, 18:01
вот честно говоря не понятно, что понимается под инсертом. поля hidden - и так внутри формы, они уже вставлены в неё и тоже будут переданы скрипту.

Цитата(Denwer @  27.3.2010,  16:47 Найти цитируемый пост)
можно ли как то яваскриптовой  (onsubmit="insert();")  функцией дернуть некий php скрипт который и выпонить то всю работу ?

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

Автор: Denwer 27.3.2010, 18:08
понимаю вас.. 

хотел рассмотреть этот вопрос без редиректа если конечно возможно


нажатие кнопки -------> вставка данных в базу -------->https://www.paypal.com/cgi-bin/webscr


Автор: bars80080 27.3.2010, 18:19
редирект стандартный способ решения такие проблем. вот он и есть на вашей схеме:

нажатие кнопки ---- /форма отсылается на ваш сайт/ ---> вставка данных в базу ---- /header('Location: https://paypal.com....');/ ----> https://www.paypal.com/cgi-bin/webscr

иной же способ с javascript и ajax

нажатие кнопки --- ajax-запрос на ваш сайт и по получению ответа ---->https://www.paypal.com/cgi-bin/webscr
                                 ---> вставка данных в базу -----
чреват многими неприятностями, он менее надёжен и прочее



но можно. достаточно поставить обработчик на onsubmit, собрать данные формы и отправить их на сервер. после чего продолжить отправку формы

<form onsubmit="func();">


Код

function func() {
    // получить данные по полям формы
    // отправить аякс-запрос
    return true; // дальше ничего не надо, форма сама отправится
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)