Скрытая передача данных из JavaScript
Проблема в следующем - надо передать данные из JavaScript на php-станичку, но сделать это незаметно для пользователя.
Пробовал разобраться как это делается с помощью метода POST, но ничего не понял. Вот пример одной из неудачных попыток function getXMLHttp(){ var XMLHttp = null; if(window.XMLHttpRequest){ try{ XMLHttp = new XMLHttpRequest(); } catch(e){} } else if(window.ActiveXObject){ try{ XMLHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e){ try{ XMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e){} } } return XMLHttp; } var str="YPA"; var XMLHttp = getXMLHttp(); XMLHttp.open("POST", "http://site/proba.php", false); XMLHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); XMLHttp.send("str="+str); Если не сложно, покажите мне (или скажите где можно посмотреть) как передать обычную строку на другую страницу скрытым от пользователя способом. Либо (и это еще лучше) передать значение этой строки в php-функцию находящуюся на этой же странице. Заранее спасибо |
и чего не получилось?
|
Цитата:
Вот полное содержимое страниц: Страница с которой отправляется значение (send.php) <script language"JavaScript"> function fun(){ window.alert("start fun()"); //выводится function getXMLHttp(){ window.alert("start getXMLHttp()"); //выводится var XMLHttp = null; if(window.XMLHttpRequest){ try{ XMLHttp = new XMLHttpRequest(); } catch(e){} } else if(window.ActiveXObject){ try{ XMLHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e){ try{ XMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e){} } } return XMLHttp; } var str="YRA"; var XMLHttp = getXMLHttp(); XMLHttp.open("POST", "http://test/rec.php", false); XMLHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); XMLHttp.send("str="+str); } </script> <FORM><INPUT type = 'BUTTON' onClick='fun();'></form> Страница которая должна принимать (rec.php) <?php echo $_POST['str']; ?> |
Машина - дура, что ей сказано, то и делает.
Ей сказано отправить XMLHttp.send("str="+str); она отправила НО, ей не сказано показать результат, и она не показывает :) Все честно :) читаем вдумчиво про responseText |
Большущие спасибо :yes:
Это не статья, а золото! :dance: |
Часовой пояс GMT +3, время: 02:48. |