Yukarıdaki cevaplar daha zarif, ancak gerçekten gerçekten inanılmaz derecede iyi çalışan hızlı ve kirli bir yol buldum. Bunu www.buildinglit.com adresinde çalışırken görebilirsiniz.
Yaptığım tek şey, genxml.php sayfama enlem ve boylam için rastgele bir uzaklık eklemekti, böylece harita her oluşturulduğunda, her seferinde biraz farklı sonuçlar döndürür. Bu bir kesmeye benziyor, ancak gerçekte, işaretçilerin üst üste biniyorlarsa haritada tıklanabilir olmaları için rastgele bir yönde hafif bir dürtme hareketine ihtiyacınız var. Aslında gerçekten işe yarıyor, örümcek yönteminden daha iyi diyebilirim çünkü kim bu karmaşıklıkla başa çıkmak ve her yerde yayılmasını ister. Sadece işaretleyiciyi seçebilmek istiyorsunuz. Rastgele döndürmek mükemmel çalışıyor.
Php_genxml.php dosyamda while deyimi yineleme düğümü oluşturmanın bir örneği burada.
while ($row = @mysql_fetch_assoc($result)){ $offset = rand(0,1000)/10000000;
$offset2 = rand(0, 1000)/10000000;
$node = $dom->createElement("marker");
$newnode = $parnode->appendChild($node);
$newnode->setAttribute("name", $row['name']);
$newnode->setAttribute("address", $row['address']);
$newnode->setAttribute("lat", $row['lat'] + $offset);
$newnode->setAttribute("lng", $row['lng'] + $offset2);
$newnode->setAttribute("distance", $row['distance']);
$newnode->setAttribute("type", $row['type']);
$newnode->setAttribute("date", $row['date']);
$newnode->setAttribute("service", $row['service']);
$newnode->setAttribute("cost", $row['cost']);
$newnode->setAttribute("company", $company);
Lat ve long altında + ofset olduğuna dikkat edin. yukarıdaki 2 değişkenden. İşaretçileri zar zor hareket ettirecek kadar rastgele küçük bir ondalık sayı elde etmek için rastgele 0,1000 ile 10000000 arasında bölmek zorunda kaldım. İhtiyaçlarınız için daha kesin olanı elde etmek için bu değişkenle uğraşmakta özgürsünüz.