热搜:NVER node 开发 php

想在php中输出在js中的数组,但是php中输不出来,求解答

2024-07-21 14:05:01
想在php中输出在js中的数组,但是php中输不出来,求解答



这是js生成数组并且传递

 <?php
      $data=json_decode($_post['data']);
      echo $data[0];
      echo '
';
      echo $data[1];

     

      
   ?>
这是php接收


回复讨论(解决方案)

$_post['data']  你把这个东西var_dump 打出来 看看是什么样子的 就知道怎么弄了啊 

$_POST 不是 $_post

我试试

$_post['data']  你把这个东西var_dump 打出来 看看是什么样子的 就知道怎么弄了啊 

$_post['data']  你把这个东西var_dump 打出来 看看是什么样子的 就知道怎么弄了啊 



打印出来之后是NULL

$_POST 不是 $_post



改成大写打印出来也是NULL

print_r($_POST);
看看是什么

print_r($_POST);
看看是什么


还是一个空的ARRAY()

你 ajax 没有传过来,有怨不得 php 了

你 ajax 没有传过来,有怨不得 php 了



那是要怎么改呢,JS也是初步接触不太会

你先看看 obj 中是否有值

对了,你不会是在 PhpStorm 中调试吧?

你先看看 obj 中是否有值

对了,你不会是在 PhpStorm 中调试吧?



我不知道是不是data : JSON.stringify(arr); 这句话的问题 这个函数貌似没有被认可
是在sublime中调试
输出obj也没有值

你本来就可以这样用的
$.post('./xueshengxuanke.php', arr).then(function (data){

php 中 print_r($_POST);

你本来就可以这样用的
$.post('./xueshengxuanke.php', arr).then(function (data){

php 中 print_r($_POST);




我这么做了
得到的数组是arr[0]->on 我要的不是on
而是arr[]对应的值

你本来就可以这样用的
$.post('./xueshengxuanke.php', arr).then(function (data){

php 中 print_r($_POST);




Array ( [tj] => Array ( [0] => on [1] => on ) )
这个就是输出的结果 但是我的目的是输出被选复选框所在的行数,而这个行数是存在arr[]这个数组里面的,我要的是arr[]=值而不是on 不知道我描述的清楚吗

            for (var i =0; i             { 
                if(checkArray[i].checked)
                {
                    //选中的操作    
                    arr[n]=i;
                    n++;       
                }
            }
alert(arr) //看到什么

            for (var i =0; i             { 
                if(checkArray[i].checked)
                {
                    //选中的操作    
                    arr[n]=i;
                    n++;       
                }
            }
alert(arr) //看到什么



这样是看不到数组内容的,之前我是用循环让他变成字符串可以输出看到。


不要开玩笑


不要开玩笑



真的没看玩笑 弹不出来窗口
var str = "";

           for(var m = 0; m             {
               
             /str += " " + arr[m];
            

            }
          alert("checked index:"+str);
这样我才能弹出框输出来

Array ( [ tj] => Array ( [0] => on [1] => on ) )
请你如实的反映情况,就你贴出的代码,绝不可能出现 tj 项

Array ( [ tj] => Array ( [0] => on [1] => on ) )
请你如实的反映情况,就你贴出的代码,绝不可能出现 tj 项






<?php
   print_r($_POST);
   ?>



这是之后修改过的代码 
第一张图是不选择光点提交
第二张图是点了第一个第二个所显示的数组

没有骗你截图为证啊

的的 js 中有 arr[n]=i;
我要看到你在提交之前 alert(arr) 的截图!
明白吗?

的的 js 中有 arr[n]=i;
我要看到你在提交之前 alert(arr) 的截图!
明白吗?






不好意思啊之前没充分理解你的意思

既然 arr 只有一个元素(5)
那么 php怎么可能输出 Array ( [tj] => Array ( [0] => on [1] => on ) ) 呢?

既然 arr 只有一个元素(5)
那么 php怎么可能输出 Array ( [tj] => Array ( [0] => on [1] => on ) ) 呢?




可能我之前表达不清楚
 如果不点提交按钮 arr数组是不会有数据的

这次我是点了一个复选框 所以输出一个值
如果我点的是两个 输出就是两个值