wskazowki na przyszlosc: Samokomentuajce sie nazwy funkcji. nature nic nie mowi nikomu, nawet Tobie za dwa tyg. nic to nie powie i bedziesz kopac w kodzie, zeby rozkminic o co ci chodzilo wczesniej. Rzuca sie, bo najprawdopodobniej gdzies w kodzie istnieje obiekt nature, ktorego anzwa jest tozsama z nazwa funkcji. zmien nazwe funkcji i to pomoze.
co do kodu, to tworzysz zmienna globalna (tak mysle, bo nie ma calosci kodu) ar, ale do fillTable przesylasz juz arPHP, wiec tez, albo to inna zmienna, albo nazwy sie nie zgadzaja.
kolejna podstawowa rzecz to Javascript jest case-sensitive, czyli wielkosc znakow ma znaczenie. dla JS dupa i DuPa i Dupa to trzy rozne d**y, mimo iz po pijaku bym nie pzonal, ale JS rozpoznaje. wiec [przypisanie czegos do ArrayWithQuestionsAll, a uzywanie arrayWithQuestionsAll, jest bledem. (zreszta jakies magiczne ide ci podpowiada bledy js w html, a nie podpowiada w JS, nie kumam.
i troche zaawansowanej rady. uzywaj enkapsulacji (poczytaj, podowiaduj sie na przyszlosc, inaczej hermetyzacja). w funkcji fillTable, korzystasz przynajmniej z 3 zmiennych z zewnatrz, czyli nie jestes w stanie przetestowac dzialania funkcji, bo zmienne sa zalezne od tego co jest w innych czesciach kodu i co moze zostac zmienione przez kogos innego. porob funkcje, ktore przyjmuja parametry i na nich dzialaj. cos jak, jak siedzisz w kuchni i gotujesz dla gosci, to nie korzystaj z ich lodowek, tylko kaz im przyniesc jedzenie do twojej kuchni i z tych skladnikow rob obiad (analogia do kuchni niezamierzona, wszak teraz zorientowalem sie ze jestes kobieta :P).
i powoli spokojnie krok po kroczku naprawiaj bledy. no i dobre IDE, ktore literowki i bledy skladniowe wylapie od razu, bys mogla skupic sie na samej logice aplikacji.