Postcodes België

LAATSTE UPDATE MAART 07, 2009

Voor een project, waarin ik de afstand moest weten tussen Belgische steden, had ik alle postcodes en plaatsnamen met GPS Coordinaten (breedte en lengte graad) nodig. Alle steden tesamen komt neer op zo’n 2000+ locaties elk met zijn unieke breedte en lengtegraad combinatie. Deze database van gemeentes en steden is handig indien je je gebruikers de mogelijkheid wil geven alles (autodealers, postkantoren, …) in een straal van X kilometer rondom hun gemeente of stad weer te geven.

Je kan deze database GRATIS downloaden. Moest je echter nog wat “spare-cash” hebben, mag je altijd wat geld naar paypal account thomas@rdlt.com sturen :D

Gratis download

Klik hier om de (My)SQL versie te downloaden (updated: 2009-03-06)

Support

Support zal alleen gegeven worden aan donors. Doneer met paypal! Mijn paypal adres: thomas@rdlt.com

Data

(My)SQL Database layout

tabel: province (bevat alle provincies)

ID
Name: Naam van de provincie

tabel: city (bevat alle steden, gemeentes & dorpen)

ID
Alpha: URL-veilige naam van de stad
longitude: Lengtegraad
latitude: Breedtegraad
code: postcode
name: naam van de stad
province: Id van de provincie

Afstanden berekenen

Om de afstanden te berekenen van stad A tot stad B kan je de volgende PHP code gebruiken

/*
*
* Geeft de afstand van A tot B adhv breedte- & lengtegraad
*
* @param	float		$lat1		Breedtegraad van A
* @param	float		$lat2		Breedtegraad van B
* @param	float		$lon1		Lengtegraad van A
* @param	float		$lon2		Lengtegraad van B
* @param	string	$unit		Afstand in kilometer (K) of mijlen (M)
*
*/
function distance($lat1, $lon1, $lat2, $lon2, $unit)
{

$theta = $lon1 - $lon2;
$dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) +  cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta));
$dist = acos($dist);
$dist = rad2deg($dist);
$miles = $dist * 60 * 1.1515;
$unit = strtoupper($unit);

if ($unit == "K")
{
return ($miles * 1.609344);
}
else
{
return $miles;
}

}

37 thoughts on “Postcodes België

  1. wyst

    er is een probleem met latitude in de (my)sql code:
    `latitude` decimal(11,10) default NULL,

    De 11 moet 12 zijn aangezien latitude uit 12 digits bestaat
    `latitude` decimal(12,10) default NULL,

    verder een fantastische database, mijn dank hiervoor

    groeten

  2. wyst

    een andere opmerking:
    INSERT INTO `province` (`id`, `name`) VALUES(7, ‘Li?’);
    dit moet natuurlijk liège zijn:
    INSERT INTO `province` (`id`, `name`) VALUES(7, ‘Liège’);

    groeten

  3. Ron

    Hmmm, Hoe kan ik hier de gemeenten uit halen? De city tabel bevat een name en province kolom, maar geeft niet aan of de waarde in de name kolom een stad, gemeente of dorp is. Mis ik iets?

  4. Thomas Hambach Post author

    Ron,

    In de kolom city staan ook de gemeenten in. “name” staat voor de naam van de gemeente.
    De data stelt steden, gemeenten en dorpen op hetzelfde niveau en er is momenteel geen veld om te bepalen of dit een stad, gemeente of dorp is.
    Ik zal allesinds eens kijken of ik deze informatie nog kan toevoegen.

  5. ken

    De afstand berekenen tussen 2 gemeenten lukt wel met het php-script.

    Wat echter veel interessanter is: een plaatsnaam en een afstand (straal) opgeven en vervolgens een lijst genereren met omliggende gemeenten.
    Heeft iemand hiervoor reeds een functie geschreven?

  6. ken

    Voor zover ik er van op de hoogte ben is het mogelijk om een deze lijst van gemeenten te generenen via mysql als met php?
    Klopt dit? en is het juist dat mysql efficiënter is?

  7. Daboe_

    Deze content is fantastisch, mag ik vragen hoe je deze verzameld hebt? Ik was hier al een tijdje naar op zoek…

  8. Pingback: Tweets that mention Postcodes van alle gemeentes van België met GPS coördinaten / Thomas Hambach – Web engineer -- Topsy.com

  9. Goya

    Goed gedaan, handige lijst.

    Het zou natuurlijk ook niet slecht zijn de posities in UTM31 te hebben, een metrisch grid is mi. makkelijker om te plotten en mee te werken dan Lat/Lons

  10. Cimm

    Als eens aan gedacht om deze te (laten) importeren in Freebase.com? Kwestie dat we ze dan via een API kunnen aanspreken en dat iedereen ze kan updaten. Gewoon een ideetje.

  11. Pingback: links for 2009-10-03 « Boskabout

  12. Pingback: links for 2009-10-03 | Askatasuna

  13. Pingback: Nunc est bibendum! · links for 2009-10-04

  14. Mike

    Dat dit leuk is, kan ik niet tegenspreken. Maar wat is het nut in België waar bijvoorbeeld de postcode 1000 een zo bizarre vorm aanneemt… Je hebt geen coördinaten maar vormen (meerdere coördinaten) nodig om gemeenten/steden te definiëren, niet?

  15. Bart

    Misschien toch even meedelen dat het record ‘Antwerpen’ (tabel cities, id 1) bij province een 0 heeft. Bijgevolg mislukken eventuele JOINS. De juiste province moet 1 zijn.

    Verder is het een zeer mooie oplijsting.

  16. Benjiro

    Nog enkel fouten:

    (14275, ‘brussel’, 4.3515499000, 50.8427501000, ’1000′, ‘Brussel’, 23),
    (14276, ‘brussel’, 4.3515499000, 50.8427501000, ’1000′, ‘Brussel’, 23),
    (14277, ‘brussel’, 4.3515499000, 50.8427501000, ’1000′, ‘Brussel’, 23),
    (14278, ‘brussel’, 4.3515499000, 50.8427501000, ’1000′, ‘Brussel’, 23),

    Staat er 4 * in.

    En postcode 1020 mankeert ( Laken ).

  17. flo

    Heb in Google Maps nog wat ontbrekende coordinaten gevonden voor de verschillende brusselse deelgemeenten

    1000, Brussel 4.3515499000, 50.8427501000
    1020, Laken (Bru.), 4.3584680000,5 0.8856730000
    1120, Neder-over-Heembeek (Bru.), 4.3831010000, 50.9013730000
    1130, Haren (Bru.), 4.4192220000 50.8950570000

  18. flo

    @Ralph

    Je kunt ‘t bestand in een tekstverwerker (TextMate voor Mac gebruik ik) met Regular Expressions vrij makkelijk omtoveren tot CSV

  19. Pingback: xHTML/CSS Alle steden van Belgie & Nederland in een option form. - 9lives - Games Forum

  20. Zatdag

    Wie kan mij helpen. Ik zoek een bestand met Belgische steden, postcodes, provincies, postcodes en coordinaten. Om te werken naar Excell.
    Thx

  21. Pingback: Anonymous

  22. Stan Jokers

    Hallo,

    erg bedankt! Mooi werkt!

    Ik vroeg mij af of er ook ergens een franse vertaling is voor de plaatsnamen. Zijn nu allemaal in het Vlaams, right?

    Groeten
    Stan

  23. Brononius

    Prachtig…

    Zijn er mensen die reeds een scriptje hebben om postcodes te zoeken binnen een straal van 10km, 25km… ?

    Voor ik hier begin met het warme water opnieuw uit te vinden. ;)

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>