我有一个Web应用程序,它使用链接和jQuery处理程序通过ajax提交信息,以在外部PHP文件中执行函数....
我在传递变量
PHP致命错误:函数名称必须是第7行的.....中的字符串(查看php的评论)
我究竟做错了什么?
<a href="#" id="tester" data-letterid="13" data-type="failValidate">This Link Fails</a>
$('#tester').on("click",function(){
var dataObj = {}
dataObj['letterid']=$('#tester').attr("data-letterid");
dataObj['letterid']=JSON.stringify(dataObj['letterid']);
dataObj['type']=$('#tester').attr("data-type");
dataObj['type']=JSON.stringify(dataObj['type']);
$.ajax({
url: 'super_testy.php',
type: 'POST',
data: dataObj,
dataType: 'json',
success: function(data){
alert("success!!");
return false;
},
error: function(jqXHR, textStatus, errorThrown){
alert(textStatus);}
});});
//It Fails Right Here, and says that Fatal Error, shown above
$id=$_POST('letterid');
$type=$_POST('type');
if ($type == "failValidate") { //do something, etc....}
即使经过测试并将JSON.stringify(xyz)添加到变量似乎没有帮助
答案 0 :(得分:1)
$_POST
, $_GET
, $_REQUEST
superglobals是数组,因此您需要使用括号表示法访问它们,而不是像函数一样:
$id = $_POST['letterid'];
$type = $_POST['type'];