Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как автоматически отправить пост данные?
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Как автоматически отправить пост данные?

Страниц (1): [1]
 

1. Zend - 13 Июня, 2010 - 19:36:50 - перейти к сообщению
Здравствуйте, мне надо чтобы при обращении к скрипту автоматически отправлялись пост данные на этот же скрипт.. Как это можно сделать без cURL ?
Если на js, напиши пожалуйста точный код, что бы я мог поправить только имя переменной и значение, js я не знаю...
2. john smith - 14 Июня, 2010 - 02:24:34 - перейти к сообщению
Все резко бросились писать за тебя код.
3. Zend - 14 Июня, 2010 - 09:01:59 - перейти к сообщению
john smith - я вежливо попросил написать код. У кого есть желание напишет, у кого нет, нет так нет....
и я думал код ограничится в пару строчек..
4. awiz - 14 Июня, 2010 - 11:42:24 - перейти к сообщению
Zend пишет:
john smith - я вежливо попросил написать код. У кого есть желание напишет, у кого нет, нет так нет....
и я думал код ограничится в пару строчек..

CODE (html):
скопировать код в буфер обмена
  1.  
  2. <form name=form>
  3. <input name=name value=value>
  4. </form>
  5. <script>
  6. document.form.submit();
  7. </script>
  8.  
5. JustUserR - 14 Июня, 2010 - 12:33:01 - перейти к сообщению
Zend пишет:
Если на js, напиши пожалуйста точный код, что бы я мог поправить только имя переменной и значение, js я не знаю...
Данная задача действительно реализуется на клиентской стороне - причем если сделать статическую HTML-страницу с JS-скриптом и передавтаь данные динамически с помощью Iframe/AJAX то можно передавать POST-данные без перезагрузки
Я могу привести вам JS-функцию которая отправляет данные POST-методом на определенную страницу
CODE (JS):
скопировать код в буфер обмена
  1. window.post_sent=function(page,data)
  2. {var frm_elm="<form action=\""+page+"\" method=\"POST\" target=\"_top\" "
  3. frm_elm=frm_elm+"style=\"display:none\" name=\"v_frm\">\n"
  4. for(var k in data) {frm_elm=frm_elm+"<input type=\"hidden\" "
  5. frm_elm=frm_elm+"name=\""+k+"\" value=\""+data[k]+"\">\n"
  6. frm_elm=frm_elm+"</form>"
  7. var dv_elm=document.createElement("div")
  8. dv_elm.innerHTML=frm_elm
  9. document.body.appendChild(dv_elm)
  10. document.forms["v_frm"].submit()
  11. }
Примером использования данной функции может быть post_send("/mypage",{"abc":"cde", "from":"100", "ttt":10}) В качестве дальнейшего усовершенствования можно добавить динамическую загрузку с прогресс-баром и автоматическую сериализацию данных
PS Данную тему переношу в раздел про JS поскольку она ему более сооответствует
6. pasha237 - 17 Июня, 2010 - 14:42:08 - перейти к сообщению
JustUserR пишет:
Я могу привести вам JS-функцию которая отправляет данные POST-методом на определенную страницу
- а куда вставить адресс страницы? Растерялся
7. JustUserR - 18 Июня, 2010 - 13:20:13 - перейти к сообщению
pasha237 пишет:
А куда вставить адресс страницы?
Согласно приведенному коду имелось в виду что будет вызываться функция post_send - и первый ее аргумент является строкой с URL-адресом страницы-обработчика аналогично тому что бы вы указали в action-аттбибуте - а вторй аргумент является хеш-массивом передаваемых данных при urlencode-виде - в принципе для автоматизации кодирования можно добавить функцию encodeURLComponent для подставляемой переменной data[k]

 

Powered by ExBB FM 1.0 RC1