samkk: imagemap mit php auswerten

hi

ich versuche gerade eine plz suche mit hilfe einer imagemap zu realisieren. die imagemap ist realtiv einfach (gekürzte fassung):

<img src="img/karte2.gif" usemap="#karte" alt="karte"></a>
<map name="karte">

<area coords="260,310,210,280..." shape="poly" alt="plz 0">
    <area coords="260,208,250,160..." shape="poly" "alt="plz 1">
    <area coords="130,175,110,155..." shape="poly" "alt="plz 2">
.
.
.

</map>

funktion soll sein: user klickt auf einen map bereich (0 bis 9), seite wertet das aus und führt eine SQL suche mit den ensprechenden parametern (plz bereich) durch und gibt die ergebnisse aus.

frage 1) ist: wie kriege ich eine verbindung zum php? ich habe ja im <area> tag die möglichkeit mit JS events (onclick usw) zu arbeiten. oder soll ich das ganze bild als eine <form> deklarieren und es dann mit GET per php auselesen lassen? das klingt ein wenig umständlich. ich bin da leider nicht der php experte, deshalb meine frage...

frage 2): wie ist die suchexpression für die plz bereich suche dann?

  1. Hi!

    die imagemap ist realtiv einfach

    na besser, aldihok!

    funktion soll sein: user klickt auf einen map bereich (0 bis 9), seite wertet das aus und führt eine SQL suche mit den ensprechenden parametern (plz bereich) durch und gibt die ergebnisse aus.

    Du suchst vermutlich Ajax

    frage 1) ist: wie kriege ich eine verbindung zum php?

    Deine Frage ist nicht PHP-spezifisch, aber ich glaube verstanden zu haben, dass Du serverseitig PHP einsetzen möchtest - trifft diese Annahme zu?

    frage 2): wie ist die suchexpression für die plz bereich suche dann?

    Bist Du nebenberuflich Übersetzer von japanischen Bedienungsanleitungen?

    Was bdeutet dieser Satz?

    off:PP

    --
    "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)
    1. na besser, aldihok!

      aldiwhat?

      Du suchst vermutlich Ajax

      ok. werde mich da mal reinlesen...

      Deine Frage ist nicht PHP-spezifisch, aber ich glaube verstanden zu haben, dass Du serverseitig PHP einsetzen möchtest - trifft diese Annahme zu?

      absolut...

      Bist Du nebenberuflich Übersetzer von japanischen Bedienungsanleitungen?

      nein. aber es wäre wohl ein aussichtsreicher markt...

      Was bdeutet dieser Satz?

      ich suche die suchexpression für die SQL anfrage, welche mir die ensprechenden objekte aus der datenbank filtert, die mit der 'PLZ-Bereich' anfrage korrelieren. sprich: user klick auf PLZ bereich '3' => alle objekte die in diesem bereich (3xxxx) liegen, werden ausgegeben. besseres deutsch?

      off:PP

    2. Hallo!

      funktion soll sein: user klickt auf einen map bereich (0 bis 9), seite wertet das aus und führt eine SQL suche mit den ensprechenden parametern (plz bereich) durch und gibt die ergebnisse aus.

      Du suchst vermutlich Ajax

      Ich hege langsam bedauerlicherweise den Eindruck, das Motto der modernen Webentwicklung ist geworden: »Wenn AJAX Dein Problem nicht löst, verwendest Du nicht genug davon.«

      Bitte allesamt mal einen Schritt zurücktreten und nochmal nachdenken was für ein Problem man eigentlich lösen will. Dies ist ein vergleichsweise simples Problem, das mit einfachsten HTML-Mitteln ohne irgendwelche Buzzwords erledigt werden kann (siehe Svens Antwort). Wenn man bei sowas schon mit AJAX-Overkill anfängt, dann möchte ich nicht wissen, was man dann bei einem komplizierten Problem macht.

      Ja, AJAX hat seine sinnvollen Anwendungen, aber man muss es nicht bei jeder Kleinigkeit einsetzen, bei der ein normales href="" es auch täte.

      (Sorry für den Rant, ist nicht persönlich gemeint, ich wollte das nur allgemein mal loswerden.)

      Viele Grüße,
      Christian

      1. Hi!

        Du suchst vermutlich Ajax

        Ich hege langsam bedauerlicherweise den Eindruck, das Motto der modernen Webentwicklung ist geworden: »Wenn AJAX Dein Problem nicht löst, verwendest Du nicht genug davon.«

        Nein, das habe ich so nicht gemeint, ich habe das Anliegen des OP dahingehend interpretiert, dass er asynchrone Requests ausführen möchte.
        Du hast aber natürlich recht: das steht nicht explizit dort.

        Ja, AJAX hat seine sinnvollen Anwendungen, aber man muss es nicht bei jeder Kleinigkeit einsetzen, bei der ein normales href="" es auch täte.

        Da gebe ich Dir recht! Svens Lösung zeigt dies ja!

        (Sorry für den Rant, ist nicht persönlich gemeint, ich wollte das nur allgemein mal loswerden.)

        Kein Problem! Du bist ja auch nicht persönlich geworden, sondern hast sachlich Deine Ansicht dargestellt - die ich übrigens teile.

        Da in letzter Zeit häufig Anliegen vorgetragen werden, zu deren Lösung AJAX gebraucht wird, habe ich das wohl hineinlesen 'wollen'.

        off:PP

        --
        "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)
  2. Hi ich würde wohl das ganze mit ajax/php und der dojo library realisieren

    [url]http://dojotoolkit.org/[/url]

    <img src="img/karte2.gif" usemap="#karte" onclick="getInformationPLZ(this.value);" alt="karte"></a>

    dann im <head>
    <!-- dojo toolkit einbinden -->
    <script type="text/javascript" src="javascripts/dojo.js"></script>
    <script type="text/javascript">

    function getInformationPLZ(strSelectedValue) {
     dojo.io.bind({
     url:"deinPHPfile.php?selectedValue="+strSelectedValue,
     load:function(type,data,evt) {
      var divToFill = document.getElementById('hierWerdenDieFelderAngezeigt');
      divToFill.innerHTML = data;
     }
     },
     mimetype:"text/plain"
     });
    }

    </script>
    </head>

    <body>

    <div id="hierWerdenDieFelderAngezeigt">
    <!-- hier wird nach dem ajax request deine ausgabe aus der php datei angezeigt -->
    </div>

    </body>

    <?php
    //deinPHPfile.php

    if(isset($_GET['selectedValue'])) {

    //hier machst du nun eine Verbindung zur DB
    //irgend ein SELECT * from table X where plz=$_GET['selectedValue']

    }

    ?>

    hoffe das hilft dir etwas auf die sprünge

    grüsse chris

    hi

    ich versuche gerade eine plz suche mit hilfe einer imagemap zu realisieren. die imagemap ist realtiv einfach (gekürzte fassung):

    <img src="img/karte2.gif" usemap="#karte" alt="karte"></a>
    <map name="karte">

    <area coords="260,310,210,280..." shape="poly" alt="plz 0">
        <area coords="260,208,250,160..." shape="poly" "alt="plz 1">
        <area coords="130,175,110,155..." shape="poly" "alt="plz 2">
    .
    .
    .

    </map>

    funktion soll sein: user klickt auf einen map bereich (0 bis 9), seite wertet das aus und führt eine SQL suche mit den ensprechenden parametern (plz bereich) durch und gibt die ergebnisse aus.

    frage 1) ist: wie kriege ich eine verbindung zum php? ich habe ja im <area> tag die möglichkeit mit JS events (onclick usw) zu arbeiten. oder soll ich das ganze bild als eine <form> deklarieren und es dann mit GET per php auselesen lassen? das klingt ein wenig umständlich. ich bin da leider nicht der php experte, deshalb meine frage...

    frage 2): wie ist die suchexpression für die plz bereich suche dann?

    1. Hi samk!

      Hi ich würde wohl das ganze mit ajax/php und der dojo library realisieren

      und ich würde wohl zukünftig befleißigt sein, TOFU zu vermeiden, danke;)

      off:PP

      --
      "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)
  3. Moin!

    ich versuche gerade eine plz suche mit hilfe einer imagemap zu realisieren. die imagemap ist realtiv einfach (gekürzte fassung):

    <img src="img/karte2.gif" usemap="#karte" alt="karte"></a>
    <map name="karte">
        <area coords="260,310,210,280..." shape="poly" alt="plz 0">
        <area coords="260,208,250,160..." shape="poly" "alt="plz 1">
        <area coords="130,175,110,155..." shape="poly" "alt="plz 2">
    </map>

    Das ist eine clientseitige Imagemap - sozusagen die Standardform einer Imagemap.

    Maßgebliches Feature solch einer Map ist, dass jede AREA auch ein HREF-Attribut bekommt, in dem drinsteht, welche URL aufgerufen werden soll, wenn ein Klick innerhalb der Area festgestellt wird.

    funktion soll sein: user klickt auf einen map bereich (0 bis 9), seite wertet das aus und führt eine SQL suche mit den ensprechenden parametern (plz bereich) durch und gibt die ergebnisse aus.

    Also ist die Lösung extrem simpel: Denkt dir einen URL-Parameter aus, der den PLZ-Bereich symbolisiert, und schreibe den für jede PLZ-Area der Map ins href-Attribut. Fertig.

    Mal als Demo: <area href="?plz=5" ...>

    Sofern nicht dieselbe "Seite" die Auswertung vornehmen soll, die auch die Area schon geliefert hat, wäre natürlich deren Dateiname ebenfalls mit anzugeben: <area href="plzselect.php?plz=5" ...>

    Und auch sonst jede Art von relativer oder absoluter URL-Adressierung ist erlaubt.

    Damit wäre dann Frage 1 geklärt:

    frage 1) ist: wie kriege ich eine verbindung zum php? ich habe ja im <area> tag die möglichkeit mit JS events (onclick usw) zu arbeiten. oder soll ich das ganze bild als eine <form> deklarieren und es dann mit GET per php auselesen lassen? das klingt ein wenig umständlich. ich bin da leider nicht der php experte, deshalb meine frage...

    Zu Frage 2:

    frage 2): wie ist die suchexpression für die plz bereich suche dann?

    "Normal" halt - hängt davon ab, was du hast, und wie man darin sucht. Von der Seite kriegst du nur einen Wert, der für das PLZ-Gebiet steht. Wie du diesen Wert in eine PLZ-Suche nach diesem Gebiet übersetzt, ist ganz normale, simple PHP-Programmierung, ggf. auch mit einer passenden DB-Abfrage.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."