Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery将单个变量发布到PHP_Php_Jquery_Json - Fatal编程技术网

Jquery将单个变量发布到PHP

Jquery将单个变量发布到PHP,php,jquery,json,Php,Jquery,Json,我有“创建用户”表单,它必须检查用户名是否已经存在。为此,我在启动此脚本的按钮上创建了onclick函数: $.ajax({ type: \"POST\", dataType: \"json\", url: \"test.php\", data: $('input[name=Username]').val(), contentType: \"application/json; charset=utf-8\", success: function(data){ alert('Items added

我有“创建用户”表单,它必须检查用户名是否已经存在。为此,我在启动此脚本的按钮上创建了onclick函数:

$.ajax({
type: \"POST\",
dataType: \"json\",
url: \"test.php\",
data: $('input[name=Username]').val(),
contentType: \"application/json; charset=utf-8\",
success: function(data){
alert('Items added');
},
error: function(e){
console.log(e.message);
}
});
但是,什么也没有发生,即使是表示成功的警报也没有发生!
请帮助我了解如何发布该单个变量以及如何从PHP页面检查用户名的存在性来获得结果。

您的
数据
键需要一个
值,它是一个对象,如下所示:

data: {username: $('input[name=Username]').val())},

这样,将创建POST值
用户名

您的
数据
键需要一个
,它是一个对象,如下所示:

data: {username: $('input[name=Username]').val())},

这样,将创建POST值
用户名

您需要将变量分配给可在
$\u POST
调用中引用的项目:

$.ajax({
    type: "POST",
    url: "test.php",
    data: {user:$('input[name=Username]').val()},
    success: function(data){
        alert('Items added');
    },
    error: function(e){
        console.log(e.message);
    }
});
然后在
test.php
中,只需检索
$\u POST['user']

编辑-我删除了contentType(谢谢)。我还删除了数据类型,因为如果在
test.php
上正确设置了标题,就不需要这样做:

header('Content-type: application/json');

您需要将变量分配给可以在
$\u POST
调用中引用的项目:

$.ajax({
    type: "POST",
    url: "test.php",
    data: {user:$('input[name=Username]').val()},
    success: function(data){
        alert('Items added');
    },
    error: function(e){
        console.log(e.message);
    }
});
然后在
test.php
中,只需检索
$\u POST['user']

编辑-我删除了contentType(谢谢)。我还删除了数据类型,因为如果在
test.php
上正确设置了标题,就不需要这样做:

header('Content-type: application/json');
  • 不要逃避JS的随机位。摆脱
    \
    s
  • 如果使用标准表单mime类型格式化,而不是只发送一个原始字符串,则处理提交的数据会容易得多<代码>数据:{keyName:$('input[name=Username]')。val()}
  • 您没有发送JSON文本。摆脱
    contentType:etc
    。(保留它可能会导致PHP“这不是表单数据,我不能用它填充
    $\u POST
    ”)。让jQuery确定它发送的内容类型
  • 然后您可以在PHP中访问
    $\u POST['keyName']

  • 不要逃避JS的随机位。摆脱
    \
    s
  • 如果使用标准表单mime类型格式化,而不是只发送一个原始字符串,则处理提交的数据会容易得多<代码>数据:{keyName:$('input[name=Username]')。val()}
  • 您没有发送JSON文本。摆脱
    contentType:etc
    。(保留它可能会导致PHP“这不是表单数据,我不能用它填充
    $\u POST
    ”)。让jQuery确定它发送的内容类型

  • 然后,您可以在PHP中访问
    $\u POST['keyName']

    这些
    \“
    来自哪里?从onclick事件中删除代码,创建函数并从中删除转义。控制台是否记录了错误消息?
    contentType
    是请求中发送到服务器的
    内容类型。请删除它,您没有发送JSON。很抱歉,\”来自PHP回音(“脚本”)命令。它们是从PHP echo函数中转义的,应该不是问题。除此之外,我想我想使用JSON,因为如果用户名存在,脚本应该将文本字段变为红色,或者如果用户名可用,则继续。因此,您可以查看JSON响应的输出,以检查用户名是否免费。这些
    \”在哪里
    come from?Remove code from onclick event,create a function and Remove escapes from“。控制台是否记录了错误消息?
    contentType
    是请求中发送到服务器的
    Content Type
    。如果删除,则不发送JSON。很抱歉,\”来自PHP echo(“脚本”)命令。它们是从PHP echo函数中转义出来的,不应该是问题所在。除此之外,我想我应该使用JSON,因为如果用户名存在,脚本应该将文本字段设置为红色,如果用户名可用,则继续。因此,您需要查看JSON响应的输出,以检查用户名是否是免费的。删除了
    contentType
    ,它就在复制/粘贴中。还删除了
    dataType:json
    ,并告知如何正确设置test.php的头。保留
    dataType:'json'
    是可以的,只是以防万一。是的,但是正确设置文件头时完全不必要且多余。以防万一,apache服务器停止识别头声明?删除了
    contentType
    ,它就在复制/粘贴中。还删除了
    dataType:json
    ,并告知如何正确设置test.php的头。保留
    dataType:'json'
    是可以的,只是以防万一。是的,但是正确设置文件头时完全不必要且多余。以防万一,apache服务器会停止识别头声明吗?