function htmlTable (data) local html = "\n\n\n" for _, heading in pairs(data[1]) do html = html .. "" .. "\n" end html = html .. "\n" for row = 2, #data do html = html .. "\n\n" for _, field in pairs(data[row]) do html = html .. "\n" end html = html .. "\n" end return html .. "
" .. heading .. "
" .. row - 1 .. "" .. field .. "
" end local tableData = { {"X", "Y", "Z"}, {"1", "2", "3"}, {"4", "5", "6"}, {"7", "8", "9"} } print(htmlTable(tableData))