Ankündigung

Einklappen
Keine Ankündigung bisher.

Daten ausgeben + Imagemap

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Daten ausgeben + Imagemap

    Hallo,

    seit kurzem versuche ich mich wieder an einem virtuellen Reiterhof. Momentan arbeite ich an den Stallungen.

    Das Endergebnis sollte so aussehen: Man sieht eine Übersichtskarte mit einzelnen Boxen, wo seine Pferde untergebracht sind. Wenn ein Pferd in der jeweiligen Box steht, kann man mit der Maus darüberfahren und bekommt ein paar Kurzinfos angezeigt. Wenn man draufklickt, kommt man zum Steckbrief von dem Pferd.

    Bei der ersten Box wird alles richtig angezeigt. Bei den darauffolgenden Boxen (ich habe den Code etwas gekürzt) kann man den Code allerdings wieder anklicken noch erscheint eine Infobox beim darüberfahren. Wenn ich mir mit echo jedoch z. B. nur den Namen des Pferdes ausgeben lasse, wird der richtige Name von dem Pferd angezeigt, das in der jeweiligen Box steht. Daher denke ich mal, dass es an der Imagemap liegt...

    Hier der Code:

    PHP-Code:
    <?php
    include("datenbank.php");

    echo 
    "<img src=img/stall1.png width=600 height=375 border=0 usemap=#map>";

    $a=mysql_query("SELECT * FROM pferde WHERE besitzer = '$_SESSION[name]' AND boxnr = '1'"); 
    $b=mysql_query("SELECT * FROM pferde WHERE besitzer = '$_SESSION[name]' AND boxnr = '2'"); 
    // ...

    // Koordinaten
    $ka="1,1,199,186";
    $kb="1,188,199,373";
    // ...

    if (@mysql_num_rows($a) == 1) {
    $Data=mysql_fetch_array($a);
    echo 
    "<map name=map>
    <area shape=rect coords=
    $ka href=/pferd.php?id=$Data[id] onmouseover=\"Tip('<b>$Data[name]</b><br><i>Geschlecht:</i> $Data[geschlecht]<br><i>Alter:</i> $Data[alterjahr] Jahre<br><i>Rasse:</i> $Data[rasse]')\" onmouseout=\"UnTip()\">
    </map>"
    ;
    }

    if (@
    mysql_num_rows($b) == 1) {
    $Data=mysql_fetch_array($b);
    echo 
    "<map name=map>
    <area shape=rect coords=
    $kb href=/pferd.php?id=$Data[id] onmouseover=\"Tip('<b>$Data[name]</b><br><i>Geschlecht:</i> $Data[geschlecht]<br><i>Alter:</i> $Data[alterjahr] Jahre<br><i>Rasse:</i> $Data[rasse]')\" onmouseout=\"UnTip()\">
    </map>"
    ;
    }

    // ...

    ?>
    Würde mich über Lösungsvorschläge sehr freuen.

    LG


  • #2
    Du setzt 2x die Map-Koordinaten, das geht nicht

    Dann:
    Ein "Select *" ist Pfui
    Die MySQL-Extension ist veraltet, nutze MySQLi
    Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

    Kommentar


    • #3
      Aber ich muss doch zweimal die Map-Koordinaten setzen, wenn ich mehrere (in diesem Fall zwei) Boxen haben möchte? Oder versteh ich das jetzt falsch?

      Ist schon ne Weile her, als ich das letzte Mal mit Php und Mysql was gemacht habe.. Also muss ich jetzt einfach nur überall ein "i" dranhängen oder noch irgendwas anderes machen?

      Kommentar


      • #4
        Zitat von teglvsu Beitrag anzeigen
        Aber ich muss doch zweimal die Map-Koordinaten setzen, wenn ich mehrere (in diesem Fall zwei) Boxen haben möchte?
        Richtig, aber in einem map-Tag und nicht in zweien.
        Zitat von teglvsu Beitrag anzeigen
        Also muss ich jetzt einfach nur überall ein "i" dranhängen oder noch irgendwas anderes machen?
        http://de2.php.net/manual/de/ref.mysqli.php
        Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

        Kommentar


        • #5
          Ah, jetzt funktioniert es! Dankeschön! (:

          Kommentar

          Lädt...
          X