javascript无法读取数组键
我用php从数据库中提取了一个三维数组,然后用json_encode对其进行解析。数组从不同的表中提取信息。现在,如果列为空,则它不会插入任何内容并移动到下一个键。问题是每当我尝试检查密钥是否为空时,javascript就会崩溃。我尝试过key.length,key===未定义,甚至试图提醒该键查看其中的内容,但javascript崩溃了 PHPjavascript无法读取数组键,javascript,php,arrays,Javascript,Php,Arrays,我用php从数据库中提取了一个三维数组,然后用json_encode对其进行解析。数组从不同的表中提取信息。现在,如果列为空,则它不会插入任何内容并移动到下一个键。问题是每当我尝试检查密钥是否为空时,javascript就会崩溃。我尝试过key.length,key===未定义,甚至试图提醒该键查看其中的内容,但javascript崩溃了 PHP $Cats=array('bags'、'ball'、'clubs'、'putts'、'tees'、'手套'、'promos'); $Id=数组('Id
$Cats=array('bags'、'ball'、'clubs'、'putts'、'tees'、'手套'、'promos');
$Id=数组('Id','Image_Path');
包括“add.php”;
$filesFound=array();
对于($i=0;$i<7;$i++){
对于($s=0;$s<2;$s++){
$query=“从“$Cats[$i]”中选择“$Id[$s]”;
$result=mysql\u query($query);
如果(!$result)
{
echo“数据库查询失败,请与支持人员联系”。$result;//----错误消息
}
$row\u count=mysql\u num\u rows($result);
如果($结果)
{
//创建while oop以将表内容循环到数组中。
while($row=mysql\u fetch\u数组($result))
{
$filesFound[$i][$s][]=$row[$Id[$s]];
}
}else回显“查询失败”;/------------------------------------错误消息
}
}
JavaScript
var checkSelected = false;
function submitCheck(ys){
if(ys == ""){
checkSelected = false;
}else{
checkSelected = true;
}
}
function check(){
if(checkSelected){
document.getElementById("AddForm").submit();
}
}
function selected(user) {
//reset the div's.
var x = document.getElementById('addDIV');
x.innerHTML = "";
//determine which one the user selected.
switch (user) {
case "Bags":
a = 0;
break;
case "Tees":
a = 4;
break;
case "Clubs":
a = 2;
break;
case "Putts":
a = 3;
break;
case "Balls":
a = 1;
break;
case "Gloves":
a = 5;
break;
case "Promos":
a = 6;
break;
case "":
return;
break;
default:
return;
break;
}
//variables for switch statement
var Cats = new Array('bags', 'balls', 'clubs', 'putts', 'tees', 'gloves', 'promos');
var div = "<div class='addedDiv'> ";
var closingDiv = " </div>";
var b = 0;
var c = cat[a][0].length - 1;
if (cat[a][0][0] == undefined) {
x.innerHTML += div + "<p style='color: red;'>There are no images for this category</p>" + closingDiv;
}else{
for (i = 0; i < cat[a][0].length; i++) {
var img = "<div class='staticDiv'><img src='../Images/" + cat[a][1][i] + "' width='300' height='200' /><form name='DelForm' method='POST' action='?'><input type='hidden' name='Lan' value='" + cat[a][0][i] + "'><input type='hidden' name='Image_Path' value='" + cat[a][1][i] + "'><input type='hidden' name='Cat' value='" + Cats[a] + "'><input type='submit' name='submit' id='SButt' value='Delete' /></form></div>";
//if the loop is going to end before the end tag, force the end tag in.
if (c == b) {
b = 2;
}
//Determine whether it needs to open or close a div
switch (b) {
case 0:
x.innerHTML += div + img;
break;
case 1:
x.innerHTML += img;
break;
case 2:
x.innerHTML += img + closingDiv;
break;
}
//reset counter
if (b == 2) {
b = 0;
} else b++;
}
}
}
var checkSelected=false;
功能提交(ys){
如果(ys==“”){
checkSelected=false;
}否则{
checkSelected=true;
}
}
函数检查(){
如果(选中){
document.getElementById(“AddForm”).submit();
}
}
所选功能(用户){
//重置div。
var x=document.getElementById('addDIV');
x、 innerHTML=“”;
//确定用户选择了哪一个。
交换机(用户){
箱包:
a=0;
打破
案例“三通”:
a=4;
打破
案例“俱乐部”:
a=2;
打破
案例“推杆”:
a=3;
打破
案例“球”:
a=1;
打破
“手套”一案:
a=5;
打破
“促销”案例:
a=6;
打破
案例“”:
回来
打破
违约:
回来
打破
}
//switch语句的变量
var Cats=新阵列(“袋子”、“球”、“球杆”、“推杆”、“球座”、“手套”、“促销”);
var div=“”;
var closingDiv=“”;
var b=0;
var c=cat[a][0]。长度-1;
如果(类别[a][0][0]==未定义){
x、 innerHTML+=div+“