• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[Kann geclosed werden]Frage wegen Map

Status
Für weitere Antworten geschlossen.

Heavyfan

Neues Mitglied
Hi @all,
ich hab eine Frage.
Ich code zurzeit ein Browsergame.
Dann hab ich eine Map zur Koordination gemacht.
Ich möchte gerne wissen wie man es schafft das wenn man über ein X fährt der Spieler name ect. angezeigt werden, die Daten können per php ausgelesen werden. Ich wusste nicht wo ich das hier posten soll. Da es ja html, js ect. sein kann. mit <map>'s möchte ich nicht schaffen da ich 2500 <map>'s über die ganze Karte verteilen müsste und die ladezeiten wären enorm.

Könnt ihr mir vllt. helfen?

MFG Heavyfan
 
Werbung:
Hi Heavyfan

es wäre hilfreich wenn du mal genau beschreiben würdest, wie die Grafik erstellt wird. Alternativ könntest du hier mal die Datei "pos.php" posten. Für ein "reines" Bild (.jpg, .gif, .png) gäbe es vermutlich keine andere Lösung als eine Map. Da dieses Bild jedoch vermutlich über PHP erzeugt wird, könnte man evtl. andere HTML-Elemente mit ausgeben lassen. Wobei dies in jedem Fall bedeutet 2500 elemente zu erzeugen, was den Seitenumfang enorm vergrößert. :roll:

Gruß
Hobbyuser

@MOD
Thema gehört vermutlich eher in PHP.
 
Hier der Code der pos.php:
[php:1:1087b9f3b8]<?php
include'config.inc.php';
header ("Content-type: image/png");
$im = ImageCreateFromPNG("bg.png");
$background_color = ImageColorAllocate($im, 0, 0, 0);
$text_color = ImageColorAllocate($im, 42, 0, 255);
$sql = 'SELECT * FROM Koos';
$query = mysql_query($sql);
while($fetch=mysql_fetch_array($query)) {
$x = $fetch['x'];
$y = $fetch['y'];
ImageString($im, 1, $x*10-7, 10*$y-10, "x", $text_color);
}
ImagePNG($im);
?>
[/php:1:1087b9f3b8]

Und das ist die ausgabe:
Code:
[img]pos.php[/img]


MFG Heavy
 
Werbung:
das muss man mit JS machen, glaub mit OnMouseOver(), aber nicht jeder hat JS an. Wenn, dann müsstest du das so machen, dass man auf das x klicken kann und man kommt auf das user profil ;)
 
js wäre ne alternative.. ja, aber mit OnMouseOver geht das ja auch nicht, weil ich das ja nur bei den X'en will und nicht auf das komplette bild.
Geht es vllt. so das man ne Klasse erstellt (in php) dann abfragt ob ein X vorhanden ist wenn ja das Bild Teilen (bzw. das Bild in 2500 Teile teilen) und dann auf das bestimmte Feld ne <map> legen oder mit <a title="bla"><img src=xxxx></a> macht. Aber ich bekomm das glaub nicht hin... wie soll ich das mit php machen das der mir das Bild in 2500 Teile zerlegt?^^
 
Ok habs gelöst ;)
Hier der Code:
Code:
<?php  
  include'config.inc.php';  
  $sql = 'SELECT * FROM Koos';  
  $query = mysql_query($sql);  
  $map = ""; 
  while($fetch=mysql_fetch_array($query)) {  
  $x = $fetch['x'];  
  $y = $fetch['y'];  
  $sqlx = 'SELECT * FROM login WHERE id = "'.$fetch['uid'].'"';
  $queryx = mysql_query($sqlx);
  $fetchx = mysql_fetch_array($queryx);
  $x1 = $x*10-10; 
  $y1 = $y*10-10; 
  $x2 = $x*10; 
  $y2 = $y*10; 
  $map = $map.'<area onmouseover="return overlib(\'Name: '.$fetchx['username'].'
Koos: '.$x.':'.$y.'\');" onmouseout="return nd();" shape="rect" coords="'.$x1.','.$y1.','.$x2.','.$y2.'" href="#" alt="" />'; 
  }  
  ?>


und die datei einfügen, und dann $map in ner <area> ausgeben und das übers Bild legen und dann passt das ;)
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben