both are correct, you can even say Я застегнул рубашку на все пуговицы
if you miss one button on a shirt a person may say to you Застегни пуговицу, because Застегни рубашку wouldn't be accurate or clear enough as technically your shirt is already buttoned up
Yes
already answered
молния is also змЕйка, this is the word i personally prefer
for pants instead of молния you can also use fly - гУльфик (rare) or ширИнка (more frequent), however for some reason ширинка is considered not a very decent word, therefore in public it's best avoided
these are pretty bookish variants and all are legit, however informally it would be said like
У неё шнурок на туфле развязался
OR
У неё шнурки развязались no matter whether it's on both shoes or just on one
As for
У него ширинка расстегнулась/расстёгнута
Штаны for pants is substandard and folksy or good for when you don't know how to name the piece of clothes, normally you'd say брЮки or джИнсы or whatever the person wears
Брюки расстёгнуты is a pretty wholesale statement as it implies that the pants barely hang on on a person, the belt is unlocked or loose as well, therefore if you only mean the fly you'd say
У него ширинка расстегнулась/расстёгнута
OR
У него на брюках змейка/молния расстегнулась/расстёгнута
У него на брюках пуговицы расстегнулись/расстёгнуты
because the fly can be on a zipper as well as on buttons
the last two are not particularly clear but you can't help it if you want to avoid the words гульфик and ширинка
velcro is sometimes called репЕйник because it clings like agrimony, however липУчка is much more common