WHELP! geeft advies over ontwerp, bouw en zoekmachine optimalisatie van je website. Ben je hier voor de eerste keer? Start dan bij het 4-stappenplan voor een eigen website.

Google Maps – Een serverswitch voor je Google API key (15)

Als je zowel lokaal als op je server een versie van je Google map hebt staan, is het lastig dat je twee Google API keys moet gebruiken: een voor je ontwikkelcomputer (thuis) en een voor je live server. Met het volgende script kan je dat eenvoudig voor elkaar krijgen.

Een serverswitch toevoegen
Voeg boven aan je bestand de volgende code toe:

<?php
if($_SERVER['SERVER_NAME'] == 'localhost'){
        $apiKey = '[de API code voor localhost]';
}else {
        $apiKey = '[de API code voor je live server]';
}
?>

Je kijkt hier of de naam van je server gelijk is aan localhost. Zo ja, dan gebruik API key 1; zo nee, dan gebruik je de code van live server. Vervang in het voorbeeld de teksten door je eigen API codes. De nieuwe variabele ($apiKey) kan je nu gebruiken in de header van je document:

<script src="http://maps.google.com/maps?file=api&amp;v=2.s&amp;key=<?= $apiKey ?>" type="text/javascript"></script>

Je zult zien dat je nu zowel lokaal als op je server dezelfde pagina kunt gebruiken. Je kunt dit overigens eenvoudig aanpassen om zo meerdere domeinen te bedienen. Gebruik in dat geval een switch / case statement.

Met dank aan
Bovenstaande tip is met dank aan twee van mijn lezers die hier om gevraagd hebben.

Stem / Bookmark [?]Plaatsen/stemmen op NUjijPlaatsen/stemmen op eKudosPlaatsen/stemmen op MSN ReporterPlaatsen/stemmen op DiggVoeg dit artikel toe aan Del.icio.usVoeg toe aan je favorieten op TechnoratiVoeg toe aan je Google bladwijzers

  1. Edwin
    16.08.08 - 21:32
    1

    Dat was een tijdje geleden sinds de laatste post… Ben benieuwd of er snel weer meer komt… :)


  2. Arjan
    05.09.08 - 11:39
    2

    Is het ook mogelijk om in één xml bestand zowel adressen als coördinaten te gebruiken voor het plaatsen van markers in de kaart? Wij hebben bijv. veel bekende adressen, maar ook bouwprojecten die nog geen postadres hebben. Die wil ik eigenlijk in één kaart samen kunnen tonen. Weet iemand of dit kan en hoe dit te realiseren is?
    Verder heb ik nog één kleine wens, maar krijg het niet voor elkaar in dit script. Ik heb eens een oplossing gezien waar je op de Google kaart kon klikken, waarna onderaan dan de coördinaten getoont worden van het punt waar je klikte (center van de kaart). Dat maakt het namelijk ontzettend makkelijk om coördinaten op te zoeken.
    Hier heb ik een werkend woorbeeld:
    http://www.weert.nl/Smartsite.shtml?id=53277
    De coördinaten staan onder de kaart, in dezelfde kleur als de achtergrond van de pagina, dus niet direct zichtbaar. Graag zou ik dit ook gebruiken in combinatie met het laatste script op deze site, waar adressen gebruikt worden ipc coördinaten.


  3. Google Maps 2 - De Google Maps Ajax API
    21.12.08 - 15:49
    3

    [...] variabele $apiKey gebruik ik om verschillende keys te kunnen gebruiken, zodat ik automatisch van key kan switchen als ik op mijn eigen computer werk, of wanneer het op de server staat. Verder laden we hier met [...]


  4. Menno
    12.06.09 - 9:55
    4

    Volgens mij is dit niet meer nodig (?)
    Heb al een paar keer kaartjes in websites geplakt maar de Googleserver kijkt volgens mij ook of de ontwikkelomgeving is aangemeld.


  5. Paul
    02.10.09 - 13:27
    5

    Beste Theo,

    Ik heb via asp in de xml die gelezen word door het javascript een subsectie bijgeschreven genaamd "categories" en zou graag de mogelijkheid willen om met google maps alleen de markers van een bepaalde categorie te laten zien.

    Heb jij enig idee hoe dit te doen is?

    met vriendelijke groet,
    Paul


  6. Martin
    22.10.09 - 11:10
    6

    Ik vraag me af hoeje een inputveld maakt en dat je dan een plaats in kan vullen en daar heen gaat en je de dichtbijzijnde bedrijven te zien krijgt in een overzicht? of is dit te veel asp/php

    Als het lijstje te moeilijk is ben ik al heel blij met het inputveldje waarmee je naar een plaats kan gaan.

    Als voorbeeld:
    http://www.bovag.nl/index.php?locationsearch=5854hb&search_name=cars&latitude=51.6084512&longitude=6.057383&pageID=12

Jouw reactie

Spelregels voor commentaar

XHTML: Je kunt de volgende HTML code gebruiken: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Domeinnaam vrij?

  • Test via Byte op .nl, .eu, .be, .com, .net, .org, .biz, .info, .de, .co.uk, .tv, .nu, .cn en .name