The Canalave City Gym is the 6th gym. To get there, you must Surf west from Jubilife City. Get HM03 Surf in Celestic Town.
The sixth gym badge (the Marsh badge) is located at Saffron City's gym. It is in Gym Leader Sabrina's possession, so you have to defeat her to obtain it.
the sixth gym is in canalave city
you go to heartom city and meet fantina in the gym PS you have to go on the elevator up
the seventh gym badge snowpoint gym
you go to the lake to battle team galatic and then you go to snowpoint city to get your seventh badge.
You can only get the Sixth Badge from the Sixth gym leader. After defeating the Sixth gym leader, the gym leader will give you the Sixth Badge.
you beat the gym leader
Hearthome
Sunnyshore City Gym: Electric (beacon badge from Volkner)
in gym durr
you beat everyone in the gym
beat the league