webForumDet fria alternativet

Tilldela javascript variabel data från MySQL databas

1 svar · 241 visningar · startad av rastapopolus

rastapopolusMedlem sedan mars 200295 inlägg
#1

...
echo "<script language=\"JavaScript\">\n";
echo "var x = \"$kolumn\";";
echo "var y = \"$rad\";";
echo "var id_submenu = \"$row[id_submenu]\";";
echo "var id_menu = \"$row[id_menu]\";";
echo "var name = \"$row[name]\";";
echo "var target = \"$row[target]\";";
echo "var submenuprio = \"$row[submenuprio]\";";
// pseudokod: rubrik[$row[id_menu]][$kolumn] = objekt med alla kolumner som attribut
// no problem med alerten som är en felkoll, all data ur databasen finns med utan konstigheter
echo "alert(y+' '+x+' '+id_submenu+' '+id_menu+' '+name+' '+target+' '+submenuprio);";
// här blir det problem:
echo "rubrik[y][x] = {id_submenu: id_submenu, id_menu: id_menu, name: name, target: target, submenuprio: submenuprio};";
echo "</script>\n";

rubrik[y][x] är global
har deklarerat den längst upp i headern (i javascript delen):
var rubrik = new Array (new Array);

Har testat tilldela
rubrik[0][0] = {id_submenu: 2, id_menu: 3, name: "hej", target: "hopp", submenuprio: 4};
går fint
man kan fortsätta på nästa rad:
rubrik[0][1] = {id_submenu: 5, id_menu: 3, name: "tjosan", target: "hoppla", submenuprio: 4};

Inga problem.

men om man gör ett "hopp" i arrayindex:arna:
rubrik[0][0] = {id_submenu: 2, id_menu: 3, name: "hej", target: "hopp", submenuprio: 4};
rubrik[1][0] = {id_submenu: 5, id_menu: 3, name: "tjosan", target: "hoppla", submenuprio: 4};

så får man det error som bifogas

hur göra smartast för att kunna utöka dynamiskt om man vill öka första index före andra?

error.jpg
nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Denna rad

var rubrik = new Array (new Array);

deklarerar en Array med en Array inuti, i rubrik[0]. rubrik[1] innehåller med andra ord ingenting.
Du måste göra så här:

 
var rubrik = new Array (5)     // Om du vill ha 5 rader.

for (i=0;i<rubrik.length;i++){
  rubrik[i] = new Array();
}

Detta gör rubrik[0], rubrik[1], rubrik[2] etc till Arrays.

133 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)