Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.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
Php 这张$u的帖子被认为是空的吗_Php_Jquery - Fatal编程技术网

Php 这张$u的帖子被认为是空的吗

Php 这张$u的帖子被认为是空的吗,php,jquery,Php,Jquery,我正在尝试使用php和ajax编写一个错误回调代码 我无法通过的是,我正在将一个变量分配给PHP中的$\u POST,以检查是否存在空值。如果为空,则触发错误消息 但是,jquery将帖子作为carton%5B0%5D:carton%5B1%5D:传递给php php会认为这是一篇空文吗?纸箱后面的这些数字是多少?卡尔顿实际上是一个数组。谢谢 +++更新+++ 为什么当语句变成,!时会触发错误!空的而不是空的?。 这是jquery用于从滑块更改事件创建输入的代码 for(var i = 0;i

我正在尝试使用php和ajax编写一个错误回调代码

我无法通过的是,我正在将一个变量分配给PHP中的
$\u POST
,以检查是否存在空值。如果为空,则触发错误消息

但是,jquery将帖子作为
carton%5B0%5D:carton%5B1%5D:
传递给php

php会认为这是一篇空文吗?纸箱后面的这些数字是多少?卡尔顿实际上是一个数组。谢谢

+++更新+++

为什么当语句变成,!时会触发错误!空的而不是空的?。 这是jquery用于从滑块更改事件创建输入的代码

for(var i = 0;i < $(this).val();i++) {
        $("#carton").append('<div data-role="fieldcontain"><label for="carton" class="ui-input-text">Enter box ' + (i + 1) + ' number:</label><input type="text" name="carton['+i+']" id="carton['+i+']" class="carton ui-input-text ui-body-null ui-corner-all ui-shadow-inset ui-body-c" /></div>')
      }
for(var i=0;i<$(this.val();i++){
$(“#纸箱”).append('输入框'+(i+1)+'编号:'))
}

如果您正在发送POST数据,则不,
$\u POST
将不会为空。

要知道$\u POST是否为空,请始终使用如下var\u dump函数

var_dump($_POST);
它可能发布为数组,我不太确定,但我认为ajax中的数组是这样的:

array [
[0] => 'item',
[1] => 'item 2'
]
数组(2){[0]=>string(0)“[1]=>string(0)”}

array(number)表示数组中的项目数,{[0],[1]}表示数组项目ID表示可以像$\u POST[1]和$\u POST[0]一样使用它们,=>string(0);string是此数组项中包含的数据类型,(0)是该项中的字符数

要检查POST数据是否为空,应使用empty()函数

最后,通过jquery发布您想要的内容,确保您根据需要对其进行了修改

$.post("test.php", { carton: "this is the content"} );
此外,您还可以通过添加

, newfield: "this is the new field's content"

var\u dump($\u POST)
里面有什么?
%5B1%5D
是url编码的
[1]
%5B
[
%5D
],检查什么值?我说的isset代表一个包含数据和数据的$u POST是正确的吗!isset$\ POST不包含数据?在您的回答中,您指出:$\u POST将不会为空,因此如何检查这些编码字符。如果发布的数据没有键值,则thanksIt可以为空。发送无法解析为key=value对的原始字符串将导致PHP跳过将其添加到_POST数组-将数据添加到PHP数组需要一个有效的键。@marc,您是否检查了我对safad re var_dump values的注释?safad。在帖子上做一个var_转储,它会产生以下结果:数组(2){[0]=>string(0)”“[1]=>string(0)””}这意味着你发布了两个“无名”变量,它们都是空的,我将更新我的答案来解释var_转储输出是如何可读的shortlysafad,我用它来检查空条件:elseif(empty($carton)){//设置响应$response_数组['status']='error';$response_数组['message']='您必须输入一个纸盒以便检索';//如果没有错误}为什么当值为空时这不会触发错误?这就是我的帖子的要点,我发布的字符会与发布的数据一起发布到php吗?谢谢,让我猜$carton=$_post['carton'];?那么您的帖子名称应该是客户端的carton,$.post(“test.php”,{carton:“这是内容”});