login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Google maps AND foreach() Wekrt niet.

Offline Multiwebmedi - 14/09/2011 10:44
Avatar van MultiwebmediNieuw lid Beste,

Voor mijn shoutcast radio wou ik graag een google mpas scriptje opzetten, zodat ik kan zien vanuit welk land ze luisteren.

Nu heb ik wel een scriptje, alleen werkt die niet goed.
Wat klopt er niet ?

Hij laat maar 1 luisteraar zien op de map, terwijl ik er meer heb.
Zou iemand mij kunnen vertellen wat ik verkeerd doe ?

Nu heb ik me eigen laten vertellen dat ik foreach() moet gebruiken, alleen doet hij het dan nog niet.

Hier een link naar de phps
http://bit.ly/nrk6bO

24 antwoorden

Gesponsorde links
Offline Ontani - 14/09/2011 11:00
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
zou:
  1. var point = new GPoint(<?php echo $longitude; ?>,<?php echo $latitude; ?>);


Niet bij in je foreach moeten zitten?
Offline Multiwebmedi - 14/09/2011 12:11
Avatar van Multiwebmedi Nieuw lid Ik heb de } Verplaatst zodat hij erbij zit.
Echter zie ik nu helemaal niks, en heb ik een javascript error links onder in me taalbalk met:

Syntaxisfout
Offline Pieter - 14/09/2011 12:51
Avatar van Pieter Gouden medaille

SEO guru
Als je nu eerst de htmlversie werkend maakt, dan kan je toch gemakkelijk zien wat er fout loopt bij de dynamische versie? Tenminste, als je dan kijkt naar de gegenereerde outputcode.  
Offline Multiwebmedi - 14/09/2011 15:42
Avatar van Multiwebmedi Nieuw lid Beste pieter,

De htmlversie werkt al, alleen zit er dan geen foreach in en laat hij maar 1 luisteraar zien.
Zodra ik gebruik ga maken van de foreach gaat het fout.
Offline Aar - 14/09/2011 19:14
Avatar van Aar PHP interesse
  1. foreach ($xml->Response as $object) {
Offline Multiwebmedi - 15/09/2011 10:58 (laatste wijziging 15/09/2011 10:59)
Avatar van Multiwebmedi Nieuw lid Beste Aar,

Ik heb de code vervangen, alleen laat hij nu helemaal niks meer zien.
Ik weet niet waar het fout gaat, zo php ster ben ik ook niet ;)
Offline Pieter - 15/09/2011 11:56
Avatar van Pieter Gouden medaille

SEO guru
@Multiwebmedi, wat ik bedoelde is:
probeer het eerst eens puur in html met meerdere markers. Vanaf het er goed uitziet, weet je welke code je moet outputten met je foreach. Nu sla je gewoon een stap over en het debuggen gaat pakken sneller als je stap per stap werkt.
Offline Multiwebmedi - 15/09/2011 13:01 (laatste wijziging 15/09/2011 14:33)
Avatar van Multiwebmedi Nieuw lid Klopt !
Op phphulp heb ik ook al een hoop hulp gehad, alleen alle mogelijke oplossingen heeft tot nu toe niks geholpen.

Nu ben ik weer opnieuw begonnen vanaf 0.
Hij haalt nu de ips op en weergeeft alle info die ik nodig heb netjes:

http://bit.ly/nHbngo

Nu is mijn vraag, of iemand mij kan helpen om het netjes in google maps te bouwen. De latitude & longitude gegevens moeten dacht ik op google maps.
Offline Aar - 15/09/2011 15:20 (laatste wijziging 15/09/2011 15:21)
Avatar van Aar PHP interesse Kijk eerst eens naar de Gmaps zelf, zonder PHP, en kijk eens hoe de markers horen te staan, en voeg dan de Gmaps er eens aan toe. En kijk dan eens verder.
Offline Multiwebmedi - 15/09/2011 16:43
Avatar van Multiwebmedi Nieuw lid Ik heb de Gmaps getest zonder php, werkt helemaal perfect.
Echter kom ik toch met een probleem als ik de PHP wil toevoegen.

Aangezien hij nu wel alle gegevens goed ophaal, alleen deze worden met de code:
  1. foreach ($locations as $field => $val) {
  2. echo $field . ' : ' . $val . "<br />\n"; }

allemaal weergeven.

Nu vroeg ik me eigen af, hoe ik dan alleen de latitude en longitude kan weergeven zodat ik deze op google maps kan laten zien.
Offline Aar - 15/09/2011 18:37 (laatste wijziging 15/09/2011 18:37)
Avatar van Aar PHP interesse Waarom volg je niet mijn opbouw op?
Offline Multiwebmedi - 15/09/2011 18:55 (laatste wijziging 15/09/2011 18:57)
Avatar van Multiwebmedi Nieuw lid Dat heb ik toch gedaan !
Ben aan de slag gegaan met Gmap zonder PHP zodra dat werkt zal ik toch verder moeten.

De gmap werkt goed, en weet ook hoe ik het er op moet weergeven. (markers ect)
Nu zal ik dan toch de PHP erin moeten verwerken zodat alles naar wens gaat werken.

Het enige probleem is nog dat alles in 1 word uitgelezen zoals ik al aangaf in me vorige post.
Offline Aar - 15/09/2011 19:18 (laatste wijziging 15/09/2011 19:18)
Avatar van Aar PHP interesse Ik deed dit:
  1. foreach ($xml->Response as $object) {


In mijn ogen veel logischer.
Offline Multiwebmedi - 15/09/2011 20:37
Avatar van Multiwebmedi Nieuw lid Beste Aar,

Ik snap even niet meer welke kant je op wil.
Ik heb een totaal andere code momenteel de phps van google maps is niet meer van toepassing.

Zie code:
test.php = http://bit.ly/nFAxbq
ip2locationlite.class.php = http://bit.ly/nEqNzt

Deze halen de juiste gevens op.
http://bit.ly/nHbngo
Offline Aar - 15/09/2011 21:30 (laatste wijziging 15/09/2011 21:33)
Avatar van Aar PHP interesse Het draait in ieder geval om de foreach, mijn constructie zou moeten werken.

Verder zie ik je probleem niet zo, nu je meldt af gestapt te zijn van GoogleMaps.
Offline Multiwebmedi - 16/09/2011 09:32 (laatste wijziging 18/09/2011 20:57)
Avatar van Multiwebmedi Nieuw lid Ik ben er niet vanaf gestapt, alleen de phps van de google_maps.php is niet meer aanwezig omdat ik nu een andere code gebruik, die wel alles naar mijn wens uitlees.

Op die manier bedoel ik het ;)
Ik snap en geloof 100% dat jou constructie goed zou moeten werken, alleen niet in mijn script helaas.

Daarom ben ik gaan zoeken ect... en aan de slag gegaan met een ander scriptje.
Het laatste deel is nu de google maps erin te bouwen, alleen dit gaat nog niet lukken aangezien de gegevens in een totaal plaatje worden opgehaald en niet apart.

  1. if (!empty($locations) && is_array($locations)) {
  2. foreach ($locations as $field => $val) {
  3. echo $field . ' : ' . $val . "<br />\n"; }
  4. }


Daarom is mijn vraag hoe ik die weer apart kan ophalen. Zo gaf ik vervolgens de nieuwe phps zodat iemand er misschien even naar kon kijken.

Zie code:
test.php = http://bit.ly/nFAxbq
ip2locationlite.class.php = http://bit.ly/nEqNzt

Ik waardeer je hulp 100% 

EDIT:
Ik ben een stapje verder.
Door de $locations['latitude'] en $locations['longitude'] te gebruiken weergeeft hij een marker.

Natuurlijk zal het weer niet mee zitten, en weergeeft hij maar 1 marker op gmap.
Is er iemand die een oplossing heeft ?
Offline Pieter - 19/09/2011 08:27
Avatar van Pieter Gouden medaille

SEO guru
Multiwebmedi, zowel Aar als ik zeggen dat je het eens moet proberen om meerdere markers op Google maps te krijgen zonder de hele php bazar er rond.

Je had het al lang gevonden als je even stopt met het copypasten van online scriptjes en zelf had geprobeerd. Zo hard is het allemaal niet.

Je stappen zijn concreet:
1. Je maakt een htmlfile.
2. Je kiest een aantal testadressen (2 of 3)
3. Je bekijkt goed de Google Maps api en voorbeelden en kijkt hoe je meerdere markers kan weergeven. Maak de Google maps in de htmlfile. Werkt het? Ga verder naar stap 4.
4. Maak het dynamisch met PHP. Dit is super eenvoudig omdat je uit stap 3 al weet hoe die code weergegeven moet worden.
5. Done!
Offline Multiwebmedi - 19/09/2011 10:16 (laatste wijziging 19/09/2011 10:55)
Avatar van Multiwebmedi Nieuw lid -
Offline Pieter - 19/09/2011 10:54
Avatar van Pieter Gouden medaille

SEO guru
Multiwebmedia,

Lees aub altijd je post eens na, nu versta ik het amper door de vreemde zinsconstructies en taalfouten.

-Weet je hoe zo'n foreach constructie werkt? Heb je het al nagelezen op php.net?
-Zeker dat je de waarde niet elke keer overschrijft als je die als string gebruikt (waardoor je maar 1 waarde krijgt, namelijk de laatste)?

Je mag er mee doen wat je wilt, maar als je het niet eerst (voor alle php) statisch (html) kan bouwen in Google Maps, dan heeft het weinig zin om ermee aan de slag te gaan in php (en dan help ik ook niet verder).
Dus toon ons eerst eens een werkend voorbeeld in Google maps, waarbij je dummie adressen gebruikt ipv je scriptje.
Offline Multiwebmedi - 19/09/2011 11:02 (laatste wijziging 19/09/2011 11:03)
Avatar van Multiwebmedi Nieuw lid 1. Het is niet echt volwassen om iemand op taalfouten af te rekenen, misschien heeft dat wel een reden "erg onbeschoft".

2. De php werkt gewoon goed en haalt de gegevens op die ik nodig heb.
Ik krijg netjes de latitude en longitude van elke luisteraar te zien.

3. Alleen de weergave op google maps is nog niet in orde. "ik zie nog steeds 1 marker"

4. Waarom denk je dat ik naar een site kom waar je om hulp kan vragen ?
Niet om vervolgens te horen dat je het maar zelf moet uitzoeken, temminste daar komt het op neer.

5. De punten die jij geef zijn allemaal netjes afgehandeld.
Ik heb op veel zoekwoorden gezocht in google, over meerdere locaties maar kan er niks vinden wat mijn probleem oplost.

Bedankt voor de moeite ! 
Offline Pieter - 19/09/2011 11:27
Avatar van Pieter Gouden medaille

SEO guru
Multiwebmedia,

1. Het was allerminst als onbeschoft bedoeld, maar je moet begrijpen dat wij er moeite in willen steken om je te helpen. Dat wordt wat moeilijk als we niet weten wat je zoal probeert, wat je kennis is, etc.
Als je dan niet geheel verstaanbaar bent is dit niet onze, maar jouw schuld. Afrekenen doe ik hier niet. Ik wil niets liever dan je probleem opgelost zien, maar wordt beperkt door de communicatie.

2. Heel goed, dat is een grote stap. Nu moet je aan de slag om het werkend te krijgen in de html. Vandaar nogmaals wat Aar en ik al tig keer aangehaald hebben in dit topic: doe het stap per stap. Hou je php even opzij, en maak een Google map aan waar je als test 2 of 3 adressen op markeert.

3. Nvt als je puntje 2 probeert.

4. Het lijkt me dat je wat lichtgeraakt reageert. Ik wil je helpen, ook al zijn mijn uren kostbaar. We moeten op een forum daarom niet het wiel opnieuw uitvinden, een foreach constructie wordt goed uitgelegd bij php.net. Daarom verwijs ik er graag naar als je er meer uitleg over wenst.

5. Zelfs voor ons is het gissen wat er fout loopt. Vandaar dat ik graag je stap voor stap wil zien werken, zodat we je stap per stap kunnen helpen.

No hard feelings. Internet is een medium waar genuanceerd antwoorden moeilijk is. Probeer dus gerust nogmaals, je zal snel zien dat je wel hier terecht kan met je vragen. Op voorwaarde dat je dan effectief doet/probeert wat we je zeggen. Want anders stuur ik je een factuur.  
Offline Multiwebmedi - 20/09/2011 07:00
Avatar van Multiwebmedi Nieuw lid
Citaat:
Want anders stuur ik je een factuur.

Oke, dat maakt me weer aan het lachen gelukkig ;)

Citaat:
Hou je php even opzij, en maak een Google map aan waar je als test 2 of 3 adressen op markeert.


Dat is ook mogelijk als ik alleen met de latitude, longitude werk niet op basis van adressen ?
Ik ben namelijk nu al op het punt dat hij alle latitude en longitude laat zien van elke luisteraar.

Alleen het punt wat je aangeef, is inderdaad de weergave op de map. "nog steeds 1 marker"
Heb je misschien een tutorial die misschien bij dit probleem past ? Zodoende kan ik kijken wat ik verkeerd doe.

Natuurlijk zoek ik ook zelf op google. Mocht er verandering komen laat ik het direct weten.
Offline Pieter - 20/09/2011 08:07
Avatar van Pieter Gouden medaille

SEO guru
Ik denk dat je de Google MarkerManager api nodig hebt:

http://gmaps-ut...mples.html

Kijk ook even in de code van het voorbeeld, daar zie je dat de locaties geladen worden in een externe js file.
Daar zie je dat, als je op die manier werkt (en enkel op die manier), de output van de foreach per adres volgende code moet zijn:

  1. {
  2. "name": "USA Offices",
  3. "icon": ["us", "flag-shadow"],
  4. "posn": [40, -97]
  5. }


Probeer even statisch dezelfde kaart te krijgen met enkele markers binnen jouw toepassing. Als dat lukt kan je kijken hoe je de php zal gaan outputten.
Offline Multiwebmedi - 23/09/2011 10:24
Avatar van Multiwebmedi Nieuw lid Beste,

Ik krijg het niet voor elkaar, dus ga ik maar opzoek naar iemand die het voor mijn werkend kan krijgen. Bedankt voor de moeite en informatie.

Mvg, Remon
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.259s