[英]post data to PHP page in external server and load content from JavaScript in local computer
我想使用计算机/移动应用程序中的JavaScript将数据发布到服务器(www.domaine.com)中的PHP文件中
示例:test.php
<?php
$x = $_POST['count'];
for ($i = 0; $i < $x; $x++)
echo $x;
?>
使用JavaScript和PSOT方法将数据发布到test.php
例
input
test.php / post data : count=5
output
01234
我希望JavaScript在将(count = 5)发布到位于外部服务器(www.domaine.com)的(test.php)后为我提供输出(01234)
我基本上是用C#开发的,但是由于我不得不做一个跨平台的移动应用程序,因此我将C#切换为JavaScript(不会使用Xamarin),因此我可以使用WebBrowser来完成所有工作,但现在JavaScript中不再可用了,任何与.NET中的WebBrowser等效的对象?
我需要一个移动应用程序,它将从GPS跟踪网站加载数据,API以XML和JSON形式返回数据
注意:我无权访问外部服务器
在这里,我将为您提供一个很好的示例,说明通常如何管理这些内容。
尽管如此,掌握它的含义仍取决于您和您的编程经验。
html和js示例:
<form action="" id="formId" method="post" accept-charset="utf-8">
<label for="inputNumber">Input something: </label>
<input type="number" id="inputNumber" name="count"></input>
</form>
<span id="submit">Submit</span>
<script>
var getPhpResponse = function( data ) {
console.log("manage php response HERE");
}
$("#submit").click(function(){
$("#formId").submit();
});
$(document).ready(function () {
$("#formId").bind("submit", function (event)
{
$.ajax({
async: true,
data: $("#formId").serialize(),
success: function(data, textStatus) {
getPhpResponse( data )
},
type:"POST",
url:"name/and/location/of/php/file.php"
});
return false;
});
});
</script>
file.php示例:
<?php
$x = $_POST['count'];
echo '{"response":"';
for ($i = 0; $i < $x; $i++)
{
echo $i;
}
echo '"}';
痘痘:
type="number"
。 span
而不是input
是个人选择,仅出于样式目的而有所不同。 编辑:
这是$ less版本。
<form action="" id="formId" method="post" accept-charset="utf-8">
<label for="inputNumber">Input something: </label>
<input type="number" id="inputNumber" name="count"></input>
</form>
<span id="submit">Submit</span>
<script>
document.getElementById("submit").onclick = function () {
var url = 'name/and/location/of/php/file.php';
var userInput = encodeURIComponent(document.getElementById("inputNumber").value);
var data = "count=" + userInput;
makeRequest( data, url );
};
var getPhpResponse = function( data ) {
console.log("manage php response HERE");
console.log(data);
parsed = JSON.parse(data);
console.log(parsed);
}
var xhr = new XMLHttpRequest();
var makeRequest = function( data, url ) {
xhr.open('POST', url, true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
xhr.send(data);
};
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function()
{
if ( xhr.readyState == 4 )
{
if ( xhr.status == 200 || window.location.href.indexOf("http") == -1 )
{
getPhpResponse(xhr.responseText);
}
else
{
console.log("Manage error here");
}
}
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.