Arrgg PHP!!!!
I've just had another quick look and you appear to be doing a postcode lookup twice.
Once in PHP and once in gmap.js.
I guess the php lookup is to check whether you have a lat/long for the postcode before trying to display the map.
The default for the map from gmap.js is GLatLng(54.622978,-2.592773) which I guess is the one in the sea.
The lines in the gmap.js file should be all you need
//addLoadEvent(mapLoad);
// addLoadEvent(usePointFromPostcode(document.getElementById('postcode').value, showPointLatLng));
//addUnLoadEvent(GUnload);
I think that this should, load a new map, take the postcode from the hidden postcode field, look up the lat/long from google then display the map.
OR
You could comment out the line
usePointFromPostcode(document.getElementById('postcode').value, showPointLatLng);
from gmap.js, change the sizes of your icon at the top of the gmap.js file, and then in the php file, after you've found the lat/long use:
Code:
<script type="text/javascript">
lon = <?=$longi?>;
lat = <?=$lati?>;
function fnOnLoad(){
var lmap = document.getElementById("map");
lmap.style.display = "";
lmap.style.height = "500px";
lmap.style.width = "475px";
var map = new GMap(lmap);
map.addControl(new GLargeMapControl());
map.addControl(new GOverviewMapControl());
var point = new GPoint(lon, lat);
map.centerAndZoom(point, 11);
//icon already available from gmap.js
icon.image = "/images/redpointer.gif";
icon.iconAnchor = new GPoint(15, 39);
icon.infoWindowAnchor = new GPoint(5, 1);
placeMarkerAtPoint(point,icon);
}
addLoadEvent(fnOnLoad);
addUnLoadEvent(GUnload);