我有一个变量,我们将调用test_string,我也分配字符串“hello”。
var test_string = "hello";
我希望它只是单独发布到php页面 我试过了:
$.post('php_page.php', test_string);
在php_page.php上我使用:
$new_var = $_POST['test_string'];
echo $new_var;
没有结果。我在$ .post()中缺少什么?
答案 0 :(得分:4)
试试这个---
$.post('php_page.php', {test_string:test_string});
让我知道
编辑我的工作代码 ---
test.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
function handle(){
var test_string = "hello";
$.post('myphp.php', {'test_string':test_string},
function (result){
$("span").html(result);
});
}
</script>
</head>
<body>
<input type="button" onclick="handle();" value="Click" />
<span></span>
</body>
</html>
myphp.php
<?php
$new_var = $_POST['test_string'];
echo $new_var;
答案 1 :(得分:2)
正如swapnesh暗示的那样,你错过了$.post
期望一个对象作为第二个参数:
$.post('php_page.php', { objkey : objval });
然后在PHP中使用以下方法检索它:
$val = $_POST['objkey'];
答案 2 :(得分:1)
在http请求中post和get,值将作为Name / value对发送。在您的代码中,您缺少两件事。第一件事是你试图只发送数据而不将其分配给Name / vale对。第二件事是你没有写入捕获服务器响应的函数。
请尝试以下操作。
$.post('php_page.php', test_string: "hello", function(response) {
alert(response);
});