Нестандартное использование <form>

12
II
На сайте с 27.02.2010
Offline
48
869

Прошу помощи у специалистов.

Суть задачи такая:

есть форма

<form action="http://site.ru/" method="post">

<input type="image" src="images/img.gif" width="200" height="200" />

<input type="hidden" name="param" value="1" />

</form>

Мне нужно сделать так, чтобы при нажатии на картинку не открывало сразу http://site.ru/ (как это происходит), а я бы хотел выполнить еще некоторые действия на php, а потом пусть открывает с передачей параметра методом Post.

Возможно ли это как-то реализовать?

IL
На сайте с 20.04.2007
Offline
435
#1
ivan_i:
Возможно ли это как-то реализовать?

<form onsubmit="alert(1);"

Вместо alert - выполнять "некоторые действия на javascript", которые могут вызвать php-скрипт, который будет "выполнять некоторые действия"

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
DiAksID
На сайте с 02.08.2008
Offline
236
#2
ivan_i:
...
Мне нужно сделать так, чтобы при нажатии на картинку не открывало сразу http://site.ru/ (как это происходит), а я бы хотел выполнить еще некоторые действия на php, а потом пусть открывает с передачей параметра методом Post.

Возможно ли это как-то реализовать?

не имеет смысла. с таким же успехом эти "некоторые действия на php" может сделать и вызываемый через POST скрипт, максимум - придётся какие-то доп параметры ему переслать...

show must go on !!!...
IL
На сайте с 20.04.2007
Offline
435
#3
DiAksID:
может сделать и вызываемый через POST скрипт

Есть ощущение, что вызываемый скрипт на другом http://site.ru

DiAksID
На сайте с 02.08.2008
Offline
236
#4
ivan-lev:
Есть ощущение, что вызываемый скрипт на другом http://site.ru

тогда из формы вызывать прокладку с "некоторыми действиями на php", которая потом вызовет сторонний скрипт, делОв то. а то ведь мазохисты щаз ТСу аякс предложат на onsubmit налепить 😂 , попытка уже была...

IL
На сайте с 20.04.2007
Offline
435
#5
DiAksID:
которая потом вызовет сторонний скрипт. делОв то...

И тут возможна промашка... Есть ощущение, что нужно, чтобы пользователь (из браузера, с его IP итд) выполнил POST-скрипт... (ну т.е. как оно "и сейчас работает")

siv1987
На сайте с 02.04.2009
Offline
427
#6
тогда из формы вызывать прокладку с "некоторыми действиями на php", которая потом вызовет сторонний скрипт, делОв то. а то ведь мазохисты щаз ТСу аякс предложат на onsubmit налепить , попытка уже была...

onsubmit гораздо изящнее чем портянка из редиректов :)

IL
На сайте с 20.04.2007
Offline
435
#7
siv1987:
onsubmit гораздо изящнее чем портянка из редиректов

Тут вопрос даже не в красоте, а в том, что решение "с редиректами" не удовлетворяет условиям задачи из первого поста.. Как обстоит ситуация на самом деле - знает только ТС..

ivan_i:
чтобы при нажатии на картинку не открывало сразу http://site.ru/ (как это происходит), а я бы хотел выполнить еще некоторые действия на php, а потом пусть открывает с передачей параметра методом Post.
II
На сайте с 27.02.2010
Offline
48
#8

Извиняюсь за неполное описание условий задачи.

<form> прописана на сайте http://site1.ru

а action идёт на http://site2.ru/

т.е. я при нажатии на картинку <form> попадаю на другой сайт и передаю параметры ему через Post.

Так вот перед тем, как я "улечу" на другой сайт, я хочу на своем еще кое что сделать на php.

Некоторые пишут, что типа можно через прокладку, а в самой прокладке делаю свои дела и потом редирект на site2.ru. Но как мне при это передать параметры на другой сайт методом Post?

ivan-lev, я так понимаю, что вы как раз и показали решение.

а не могли бы вы подробно код показать, как это сделать (я не спец по ява-скриптам)?

т.е. я пишу:

<form action="http://site2.ru/" method="post" onsubmit="<тут вызов процедуры на JS>">

<input type="image" src="images/img.gif" width="200" height="200" />

<input type="hidden" name="param" value="1" />

</form>

а что тут и как на ява-скрипте написать вызов php-файла?

siv1987
На сайте с 02.04.2009
Offline
427
#9

<form action="http://site2.ru/" method="post" onsubmit="submitForm(this);">

....

function submitForm(f){

//Ajax запрос

}

II
На сайте с 27.02.2010
Offline
48
#10
siv1987:

//Ajax запрос

а ссылочку не дадите на пример такого запроса

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий