AJAX 将数据从客户端(JS)发送到服务器(PHP)
ajax send data from client(js) to server(php)
<html>
<head>
<script> src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js">
</script>
<script>
/*$(document).ready(function(){
$("p").click(function(){
event.preventDefault()
$.post("/response.php",
{
name: "Donald Duck",
city: "Duckburg"
},
);
});
});*/
$(document).ready(function(){
$("p").click(function(){
event.preventDefault();
$.ajax({
type: "POST",
url: "/response.php",
data: {name: "Donald Duck", city: "Duckburg"},
cache: false,
success: function(html){
$(".make").html(html);
}
});
});
});
</script>
</head>
<body>
<form action="http://localhost/response.php" />
<p><input type="submit" value="Send an HTTP POST request to a page and get the result back"></p>
</form>
</body>
</html>
嗨,我试图学习 ajax 将数据从客户端(js,html(发送到服务器(php(,我尝试了 ajax.post((,但它似乎像从服务器加载数据一样工作,那么如何使其工作将数据发送到服务器?
您获得的值未定义,因为标准表单提交是在 AJAX 发布之前执行的。除了提交按钮外,您的表单不包含输入,因此不会发送任何数据。您确实将 AJAX 设置为发布值,但这永远不会有机会执行。
$("form").on("submit", function(event) {
event.preventDefault(); // stop standard form submission
var data = { name: "Donald Duck", city: "Duckburg" };
$.post("/response.php", JSON.stringify(data),
function(result) { });
...
});
您可能还需要在 PHP 中处理 json 请求。
其实不是发送数据函数有问题,而是服务器句柄部分有问题,我们不能简单地用"echo $_POST['name']"来获取值。 但是,如果我们将其插入数据库,即使"未定义名称"警告仍然退出,它确实存在。这是服务器处理程序部分
<?php
mysql_connect("localhost","root");
mysql_select_db("PeerPrediction");
$result_set=mysql_query("SELECT*FROM GuessOfNum");
$num_messages=mysql_num_rows($result_set);
$name=$_POST["name"];
$guessnum=$_POST["guessnum"];
$taskid=$_POST["taskid"];
$effort=$_POST["effort"];
$query=mysql_query("INSERT INTO GuessOfNum(name,guessNum,taskid,effort)values('$name','$guessnum','$taskid','$effort')");
if($query){
echo "Your comment has been sent";
}
else{
echo "Error in sending your comment";
}
?>
更改脚本代码
<script>
$(document).ready(function(){
$("input[type='submit']").click(function(){
$.ajax({
type:'GET',
url:"http://localhost/response.php",
data: "name=Donald Duck&city=Duckburg",
success:function(data){
/*success data*/
}
});
});
});
</script>
你可以在 php 中得到带有 echo $_POST['city'] 的变量; 和回显 $_POST['名称'];
尝试以这种方式使用$.ajax
:
$(document).ready(function(){
$("button").click(function(){
$.ajax({
type: "POST",
url: "/response.php",
data: {name: "Donald Duck", city: "Duckburg"},
success: function(html){
}
});
});
});
现在,在您的response.php
中,您有以下值:$_POST['name']
等于"唐老鸭",$_POST['city']
等于"鸭堡"。
更新:将您的 HTML 表单更改为:
<form id="form" />
<p><input type="submit" value="Send an HTTP POST request to a page and get the result back"></p>
</form>
然后尝试更改 javascript 函数:
$(document).ready(function(){
$("#form").submit(function(){
$.ajax({
type: "POST",
url: "/response.php",
data: {name: "Donald Duck", city: "Duckburg"},
success: function(html){
}
});
return false;
});
});
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- 如何使用Javascript将空数组发送到PHP服务器
- 将通过 AJAX 上传的二进制数据保存在 PHP 服务器上
- 无法处理 PHP 服务器中由 FormData 发送的数据
- Fetch Api无法从PHP服务器获取会话
- 如何在等待php客户端脚本的回复时终止php服务器脚本
- javascript客户端时间到php服务器时间
- PHP 服务器无法使用 ajax 接收 javascript 对象
- 与Node.js服务器和PHP服务器之间的差异之间的理论混淆
- 如何将文件从jQuery上传到php服务器
- php 服务器端计时器 独立于客户端浏览器
- XMLHttp请求将 XML 发送到 PHP 服务器
- 如何上传 XML 文件并发送到 PHP 服务器
- 推送器 PHP 服务器不工作
- 将文本区域的内容保存到文件并从PHP服务器页面加载
- 如何在我的本地主机 php 服务器上安装更少
- 脚本未将输入发布到PHP服务器脚本
- JavaScript-如何获取PHP服务器的正确时间
- ajax - 将数据作为 JSON 发送到 PHP 服务器并接收响应
- 从php服务器读取json