What i want to do is dynamicly plot the postcodes onto the map and the array to split on , from the query string. how i would of thought it would of worked by having $settings[postcodes] = array($_GET['markercode']); and querystring ?markercode="BH1", "BH2", "UB3", "UB4", "UB4", "UB4", "UB5", "UB4" but doing it this way it just ignors the , please could anyone lend a hand. [u]heres the code:[/u] [!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]<?php ///////////////////////////////////////////////////// // Google Maps API with Jibble UK Postcodes v1.0 // // sebflipper Copyright 2005 // // [a href=\"http://www.sebflipper.com\" target=\"_blank\"]http://www.sebflipper.com[/a] // // // // As Google Maps only works from longitude and // // latitude decimal notations use this script to // // work out marker positions using the first part // // of the UK Postcode // // // // Please refer to readme.txt for more details // // // // Distributed under the terms of the // // General Public License (GPL) See: // // [a href=\"http://www.gnu.org/copyleft/gpl.html\" target=\"_blank\"]http://www.gnu.org/copyleft/gpl.html[/a] // // // // Google Maps and/or the Jibble UK Postcode // // Database may operate under a different // // licenses, please see their sites for info // ///////////////////////////////////////////////////// // Report all errors except E_NOTICE // This is the default value set in php.ini error_reporting(E_ALL ^ E_NOTICE); // Config Area // MySQL connection details $settings[server] = 'geton2.gotadsl.co.uk'; $settings[db_name] = 'postcode'; $settings[db_user] = 'postcode'; $settings[db_pass] = 'postcode123123'; // Your Google Maps key (get one for free from: [a href=\"http://www.google.com/apis/maps/signup.html)\" target=\"_blank\"]http://www.google.com/apis/maps/signup.html)[/a] $settings[google_maps_key] = 'ABQIAAAAjf0IkBr7AhZMIHENI_tmMxQnXaCp8Z41NECtBqyfmMrZtmeT1RQ_HfMypmP4Lkcc2TJw-l_tNA5qMg'; // Key for: [a href=\"http://127.0.0.1/\" target=\"_blank\"]http://127.0.0.1/[/a] // Starting Postcode (Postcode to centerAndZoom from) $settings[start_postcode] = $_GET['postcode']; $settings[zoom_level] = "5"; $settings[div_style] = "width: 12em; style: font-size: small"; // Postcodes to show as markers (this would most likely come from your database or from the users $_GET or $_POST, but as an example I have fill out some postcodes) //$settings[postcodes] = array($_GET['markercode']); $settings[postcodes] = array("BH1", "BH2", "UB3", "UB4", "UB4", "UB4", "UB5", "UB4"); //array("UB8", "UB7", "UB3", "UB4", "UB4", "UB4", "UB5", "UB4") $settings[postcode_html] = array($_GET['markertxt']); // Longitude and Latitude Markers (if you need to use a more precise location) $settings[long_lat] = array("-0.472219,51.509878"); $settings[long_lat_html] = array("West Drayton Station"); ////////////////////// // End of Config Area // Connect to database $db = mysql_connect($settings[server], $settings[db_user], $settings[db_pass]) or die("<hr>Unable to connect to database on '".$settings[server]."' with user '".$settings[db_user]."'<br />Please check your settings in this file"); mysql_select_db($settings[db_name],$db) or die("Please first create your database '".$settings[db_name]."'!"); ; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <style type="text/css"> <!-- body { font-family: Arial, Helvetica, sans-serif; font-size: small; } --> </style> <script src="http://maps.google.co.uk/maps?file=api&v=1&key=<?php echo $settings[google_maps_key]; ?>" type="text/javascript"></script> </head> <body> <!-- Google Maps API with Jibble UK Postcodes v1.0 - sebflipper Copyright 2005 - [a href=\"http://www.sebflipper.com\" target=\"_blank\"]http://www.sebflipper.com[/a] !--> <div id="map" style="width: 500px; height: 400px"></div> <script type="text/javascript"> //<![CDATA[ // Load up Google Maps var map = new GMap(document.getElementById("map")); map.addControl(new GSmallMapControl()); map.addControl(new GMapTypeControl()); <?php // Get starting cords $sql_query = "SELECT * FROM `postcode_data` WHERE `postcode` LIKE '$settings[start_postcode]' LIMIT 0 , 1"; //echo $sql_query; $result = mysql_query($sql_query,$db); if ($data = mysql_fetch_array($result)) { do { $longitude = $data[long_dec]; $latitude = $data[lat_dec]; } while ($data = mysql_fetch_array($result)); } echo "map.centerAndZoom(new GPoint($longitude,$latitude), $settings[zoom_level]);\n\n"; ?> function createMarker(point,html) { var marker = new GMarker(point); GEvent.addListener(marker, "click", function () { marker.openInfoWindowHtml(html); }); return marker; } <?php // Check if there are any postcodes the same and merge there HTML content $key_index_merge = -1; foreach ($settings[postcodes] as $postcode) { $key_index_merge++; $found_key = array_search($postcode, $settings[postcodes]); if ($key_index_merge !== $found_key) { // Remove the key unset($settings[postcodes][$found_key]); // Take the HTML and add it to existing key $new_key = array_search($postcode, $settings[postcodes]); $settings[postcode_html][$new_key] = $settings[postcode_html][$new_key]."<br><!-- New Postcode !-->".$settings[postcode_html][$found_key]; // Remove the old HTML unset($settings[postcode_html][$found_key]); } } // Reindex arrays $settings[postcodes] = array_values($settings[postcodes]); $settings[postcode_html] = array_values($settings[postcode_html]); // Count how many items are shown in each box $key_index_count = -1; foreach ($settings[postcode_html] as $postcode_html) { $key_index_count++; $items = explode("<!-- New Postcode !-->", $postcode_html); $no_items = count($items); $settings[postcode_html][$key_index_count] = "<b>$no_items</b> location(s) found:<br>".$settings[postcode_html][$key_index_count]; } // Postcode Markers $key_index = -1; //$settings[postcodes] = array_unique($settings[postcodes]); foreach ($settings[postcodes] as $postcode) { $key_index++; $sql_query = "SELECT * FROM `postcode_data` WHERE `postcode` LIKE '$postcode' LIMIT 0 , 1"; $result = mysql_query($sql_query,$db); if ($data = mysql_fetch_array($result)) { do { $longitude = $data[long_dec]; $latitude = $data[lat_dec]; } while ($data = mysql_fetch_array($result)); } echo "\nvar point = new GPoint($longitude,$latitude);\n"; echo "var marker = createMarker(point, \"<div style='$settings[div_style]'>".$settings[postcode_html][$key_index]."</div>\");\n"; echo "map.addOverlay(marker);\n"; } // Longitude and Latitude Markers $key_index = -1; foreach ($settings[long_lat] as $long_lat) { $key_index++; echo "\nvar point = new GPoint($long_lat);\n"; echo "var marker = createMarker(point, \"<div style='$settings[div_style]'>".$settings[long_lat_html][$key_index]."</div>\");\n"; echo "map.addOverlay(marker);\n"; } ?> //]]> </script> </body> </html>[/quote] thanks Lloyd