Stuck: grafischer submit erkennen

Hi!

Ich habe in diesem Aritkel gelesen, wie man die üblichen Submit-Buttons als grafiken darstellen kann.
Funktioniert auch soweit
http://de.selfhtml.org/html/formulare/formularbuttons.htm#grafische

Allerdings, möchte ich in PHP nun abfragen, welcher Button gedrückt wurde, mit dem Standard-Button funktioniert das so:

if (isset($_POST['name']))
{
        echo 'Der Button 'name' wurde betätigt.';
}

Wenn ich nun aber von dem Button den type von submit auf image ändere, wird der button schön angezeigt, aber diese abfrage funktioniert leider nicht mehr.

Kann mir da jemand helfen, wie ich das trotzdem abfragen kann?

mfg

Stuck

  1. Hallo!

    Wenn ich nun aber von dem Button den type von submit auf image ändere, wird der button schön angezeigt, aber diese abfrage funktioniert leider nicht mehr.

    Weil der Input-Name als name_x und name_y üvergeben wird.

    siehe: print_r($_POST);

    André Laugks

    --
    Die Frau geht, die Hilti bleibt!
    1. Hello,

      Wenn ich nun aber von dem Button den type von submit auf image ändere, wird der button schön angezeigt, aber diese abfrage funktioniert leider nicht mehr.

      Weil der Input-Name als name_x und name_y üvergeben wird.

      siehe: print_r($_POST);

      Der Tipp mit print_r($_POST) ist gut.

      Aber da war außerdem ein Fallstrick bei den Browsern versteckt.
      Es gibt welche, die die Koordinaten bzw die Achsenangaben anders übertragen.
      Leider habe ich das auch nicht auswendig drauf, um welche es sich da handelt.
      Aber etwas Recherchieren im Archiv würde sich gewiss lohnen, da diese Browser sonst wieder von der Nutzung des Scriptes ausgeschlossen blieben.

      Harzliche Grüße vom Berg
      esst mehr http://www.harte-harzer.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Hi,

        Weil der Input-Name als name_x und name_y üvergeben wird.
        Aber da war außerdem ein Fallstrick bei den Browsern versteckt.
        Es gibt welche, die die Koordinaten bzw die Achsenangaben anders übertragen.

        Keiner der mir bekannten Browser überträgt die Koordinaten als name_x und name_y.
        Die machen das wie im HTML-Standard vorgesehen als name.x und name.y.

        (Zitat: The submitted data includes name.x=x-value and name.y=y-value where "name" is the value of the name attribute, and x-value and y-value are the x and y coordinate values, respectively. http://www.w3.org/TR/html401/interact/forms.html#h-17.4.1)

        Erst PHP macht daraus name_x und name_y.

        Unterschiede bestehen darin, ob (falls value vorhanden ist) auch das name/value-Pärchen übertragen wird (Firefox macht's, IE nicht).

        Bei Lynx bin ich mir nicht sicher, was der macht, müßte ich erst ausprobieren. Theoretisch müßte der das name/value-Pärchen übertragen, da ja kein "pointing device" benutzt wird.

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        Schreinerei Waechter
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
        1. Hello,

          Erst PHP macht daraus name_x und name_y.

          Das ist mir klar. Aber, wenn kein name.x oder name.y ankommt, kann php das auch nicht umwandeln.

          Unterschiede bestehen darin, ob (falls value vorhanden ist) auch das name/value-Pärchen übertragen wird (Firefox macht's, IE nicht).

          Das mit dem IE ist mir allerdings neu. Bisher hatte ich da keine Schwierigkeiten.

          Harzliche Grüße vom Berg
          esst mehr http://www.harte-harzer.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau
          1. Hi,

            Das ist mir klar. Aber, wenn kein name.x oder name.y ankommt, kann php das auch nicht umwandeln.

            Welcher Browser liefert denn kein name.x und name.y?

            Unterschiede bestehen darin, ob (falls value vorhanden ist) auch das name/value-Pärchen übertragen wird (Firefox macht's, IE nicht).

            Das mit dem IE ist mir allerdings neu. Bisher hatte ich da keine Schwierigkeiten.

            <form method="get" action="">
            <input type="image" alt="bla" name="bla" value="bla" src="">
            </form>

            erzeugt bei Deinem IE also 3 get-Parameter?

            bla.x, bla.y und bla?

            Ich krieg das nur bei Geckos und bei Konqueror (letzterer unter Cygwin-KDE) hin, daß
            ?bla.x=17&bla.y=42&bla=bla
            als Request-String auftaucht (17 und 42 stehen hier für die aktuellen Klick-Koordinaten)

            Meine IE (5.0, 5.5, 6.0) liefern alle nur
            ?bla.x=17&bla.y=42

            Auch Opera (7.53, 8.02) liefert nur
            ?bla.x=17&bla.y=42

            Lynx (unter Cygwin) liefert (so wie W3M unter Windows) jeweils die 0 als Koordinaten.
            ?bla.x=0&bla.y=0

            cu,
            Andreas

            --
            Warum nennt sich Andreas hier MudGuard?
            Schreinerei Waechter
            Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
            1. Hello,

              Ich krieg das nur bei Geckos und bei Konqueror (letzterer unter Cygwin-KDE) hin, daß
              ?bla.x=17&bla.y=42&bla=bla
              als Request-String auftaucht (17 und 42 stehen hier für die aktuellen Klick-Koordinaten)

              Meine IE (5.0, 5.5, 6.0) liefern alle nur
              ?bla.x=17&bla.y=42

              Auch Opera (7.53, 8.02) liefert nur
              ?bla.x=17&bla.y=42

              Lynx (unter Cygwin) liefert (so wie W3M unter Windows) jeweils die 0 als Koordinaten.
              ?bla.x=0&bla.y=0

              Ok, nun habe ich verstanden, wie Du das meintest.
              Abr es gibt eine weitere Abweichung. Wir haben damals ca. 17 Browser getestet und diesen Fehler bei einigen (zwei oder drei) gehabt.
              Ich kann sie leider im Moment nicht finden. Untersucht haben wir das ca. 2002 und es wird wohl versehentlich nur in irgendeiner Datensicherung noch dokumentiert sein, aber leider nicht in meiner Sammlung.

              Wahrscheinlich hat sowieso die Zeit den Mantel des Schweigens darüber gedeckt...

              Harzliche Grüße vom Berg
              esst mehr http://www.harte-harzer.de

              Tom

              --
              Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
              Nur selber lernen macht schlau