Ajax没有发送所有数据,只有一些

时间:2018-03-20 02:21:54

标签: php jquery ajax

我真的不知道为什么这不起作用。 data1和data2将被发送到我的php表单,但data3不管我设置的是什么。任何人都可以指出我可能只是忽略了什么是错误的。

    function flap(span) {
    var id1 = span.getAttribute('data-id1');
    var id2 = span.getAttribute('data-id2');
        var lop = id2.slice(8, 1000);
        var lip = id2.slice(0, 8);
        var str = lop;
        var n = str.lastIndexOf("/");
        var res = str.slice(0, n);
        var mac = res;
        var red = mac.lastIndexOf("/");
        var rem = red+1;
        var ret = mac.slice(rem, 1000);
        var slap = ret;
     $.ajax({
        url:'controlmysite/userfiles.php',
        type:'POST',
        data:{
            data1: id1, data3: slap, data2: lip + res,
        },
          success: function(filesDirectory1){
           $('#filesDirectory').html(filesDirectory1);
    }});}

我将data3改为许多不同的东西;我甚至将它设置为id1,lip,res和ret。我用data1和data2交换了仓位,但由于某种原因,data3根本就不会发送。请有人指出我显然在忽视的东西。谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

问题可能来自于太大的'data3'的大小 尝试在“php.ini”文件中为“max_input_vars”“post_max_size”赋予一个很大的价值,或者在php脚本的生成中定义它“ controlmysite / userfiles.php“

ini_set('max_input_vars',100000);
ini_set('post_max_size','20M');

您可以查看此帖子increasing-the-maximum-post-size

答案 1 :(得分:0)

(求助)这是公认的答案。我没有足够的代表来检查答案:)

谢谢大家的意见。 该问题是由单独的ajax函数调用创建的。 我不得不在我的php文件中添加以下内容。

       if(isset($_POST['data1']) && isset($_POST['data2']) && isset($_POST['data7'])) {
    $updir = $_POST['data2']; echo $updir."<br>";
    $id1 = $_POST['data1'];
    $id7 = $_POST['data7'];
    $id8 = $_POST['data8'];
       if(isset($_POST['data3'])) {$id3 = $_POST['data3'];}
    echo "<span id='".$updir."' title='".$id1." directory' class='point mud' value='".$updir."' onclick='flap(this)' data-id2='".$updir."'>
    <i class='fa fa-folder-open-o' style='color:blue'></i>&nbsp";
       if(isset($_POST['data3'])) { echo $id3;} else { echo $id7;}; echo "</span><br><br>";
    The rest of php...}

我的controlmysite / userfiles.php正在接收2个单独的ajax功能帖子,而$ id7正在覆盖$ id3。另外两个if(isset())解决了冲突。

我知道这个问题是我的PHP过度站点错误,但是这里会留下问题和答案以供参考,以防其他人有一个&#34;脑屁&#34;就像我在编码时所做的那样 谢谢大家的时间,度过美好的一天。