Convirtiendo mi comentario en una respuesta:
Solo mirando tu código por un segundo puedo ver que estás usando la $row
variable tanto para el lazo exterior como para el lazo interior. Intente cambiar el nombre de $row
del bucle externo variable a $outerRow
y el bucle interior $row
variable a $innerRow
. Este puede ser el primer problema. Esto también puede aplicarse a otras variables, como por ejemplo el $result
variables.