将参数传递给可以在php中使用的ajax函数?
我有以下ajax/jquery代码段,我的目标是发送一个包含“type”参数的请求。我已经有一个用户名和密码,我可以回显没有问题。但是,如果我尝试添加将参数传递给可以在php中使用的ajax函数?,php,jquery,ajax,Php,Jquery,Ajax,我有以下ajax/jquery代码段,我的目标是发送一个包含“type”参数的请求。我已经有一个用户名和密码,我可以回显没有问题。但是,如果我尝试添加 type:'login'对于请求的数据,我永远无法从php访问'type' $(document).ready(function(){ $("#button").click(function(){ $.ajax({ url: 'login.php', typ
type:'login'
对于请求的数据,我永远无法从php访问'type'
$(document).ready(function(){
$("#button").click(function(){
$.ajax({
url: 'login.php',
type: 'POST',
content-type: 'application/x-www-form-urlencoded',
data: {type:'login',username:user,password:pass},//this is my issue, why can't I pass type?
success: function(response){
//determine if login was successful
}
});
});
php只是检查是否设置了POST,并检查参数POST[“type”],但它没有通过
PHP
由于您使用的是内容类型:“application/x-www-form-urlencoded”
,因此需要使用jQuery的$.param来序列化该值。检查此处:由于您使用的是内容类型:“application/x-www-form-urlencoded”
,因此需要使用jQuery的$.param来序列化该值。检查这里:你的jQuery看起来不错,你能把你的PHP代码添加到问题中吗?准备好了吗:)我觉得一切都很好。var\u dump($\u POST)
显示了什么?这是无效的:内容类型:'application/x-www-form-urlencoded',
如果对象键中有-
,则需要引用它。实际上,它应该是内容类型:
。您的jQuery看起来不错,你能把你的PHP代码添加到问题中吗?准备好了吗:)我觉得一切都很好。var\u dump($\u POST)
显示了什么?这是无效的:内容类型:'application/x-www-form-urlencoded',
如果对象键中有-
,则需要引用它。实际上,它应该是内容类型:
。
<?php
if (!isset($_POST))
{
$msg = "NO POST MESSAGE SET, POLITELY **** OFF";
echo json_encode($msg);
exit(0);
}
$request = $_POST;
$response = "unsupported request type, politely **** OFF";
switch ($request["type"])
{
case "login":
$response = "login, yeah we can do that";
break;
}
echo json_encode($response);
exit(0);
?>