You cannot buy Dive Balls in Pokémon Platinum however you can get Dive Balls from the Newspaper Person in Solaceon Town who asks to see a specific Pokémon every day.
Chat with our AI personalities
on your way to victory road, in the water you will see a poke ball that is a dive ball
buy them+
You can buy these in Ruby, Sapphire and Emerald at Mossdeep city's pokemart.
You can buy them at the Pokemon mart at the Pokemon league. I buy my timer balls, heal balls, etc. at the Pokemon mart in canalave city
Hearthrome city