Submit auf gleiche Seite im IE
MS_Honkbert
- browser
0 wahsaga0 MS_Honkbert0 wahsaga
0 dedlfix
0 MS_Honkbert0 wahsaga
Hallo Leuts,
ich habe ein Problem mit einer Intranetseite, die momentan mit PHP zusammenbastele. Ich vermute hier ein Browser-Problem, deshalb unter diesem Thema.
Ich benutze viel die Weiterleitung auf die gleiche Seite über Submit, mit $PHP_SELF. Mit Firefox ist das kein Problem, mit dem IE grundsätzlich auch nicht, aber wenn ich anstatt Buttons Bilder nehme, dann bekomme ich Probleme mit dem IE.
Prinzipiell:
echo "<form method=post action="{$PHP_SELF}">;
echo "<input type=image name="send" value="send">";
echo "</form>";
Oben im Seiten-Header steht dann so was wie:
if(isset($_POST['send']))
echo "ok";
Das funktioniert wie bereits erwähnt, mit dem FF problemlos, aber mit dem **** IE natürlich mal wieder nicht. Kann mir einer sagen warum? Es ist auch egal ob ich anstatt $PHP_SELF etwas schreibe wie
[Seitenname]
$_SERVER['PHP_SELF']
oder sonst was. Keine Ahnung was das wieder ist.
Benutze aktuellste Version von PHP und Apache2.
Vielen Dank im voraus.
Gruß
tsj
hi,
Mit Firefox ist das kein Problem, mit dem IE grundsätzlich auch nicht, aber wenn ich anstatt Buttons Bilder nehme, dann bekomme ich Probleme mit dem IE.
Wie verarbeite ich <input type="image">?
gruß,
wahsaga
Hi,
danke für die schnelle Antwort, aber das hat mir nicht geholfen. Ich glaube mein Problem liegt hier einfach daran, dass der IE die entstandene $_POST['buttonname']-Variable nicht erkennt, warum auch immer. Nehme ich nen Button, funktioniert das ganze.
Nimmt der IE bei der type=image-Variante vielleicht den Namen oder den Value nicht an?
hi,
danke für die schnelle Antwort, aber das hat mir nicht geholfen.
Würde es aber, wenn du's mit Verstand liest.
Ich glaube mein Problem liegt hier einfach daran, dass der IE die entstandene $_POST['buttonname']-Variable nicht erkennt, warum auch immer.
*seufz*
"Der IE" muss da gar nix erkennen - PHP läuft serverseitig, und nicht im Browser.
Nimmt der IE bei der type=image-Variante vielleicht den Namen oder den Value nicht an?
Der IE übermittelt die Klick-Koordinaten so, wie auf der verlinkten Seite beschrieben.
Das für input type="image" optionale name=value-Paar übermittelt er nicht - also reagiere in deinem Script entsprechend.
gruß,
wahsaga
hi,
danke für die schnelle Antwort, aber das hat mir nicht geholfen.
Würde es aber, wenn du's mit Verstand liest.
danke....das kann man aber auch freundlicher sagen!
Ich glaube mein Problem liegt hier einfach daran, dass der IE die entstandene $_POST['buttonname']-Variable nicht erkennt, warum auch immer.
*seufz*
"Der IE" muss da gar nix erkennen - PHP läuft serverseitig, und nicht im Browser.Nimmt der IE bei der type=image-Variante vielleicht den Namen oder den Value nicht an?
Der IE übermittelt die Klick-Koordinaten so, wie auf der verlinkten Seite beschrieben.
Das für input type="image" optionale name=value-Paar übermittelt er nicht - also reagiere in deinem Script entsprechend.
ja ja....ich habs ja verstanden ;-)
echo $begrüßung;
echo "<input type=image name="send" value="send">";
Das funktioniert wie bereits erwähnt, mit dem FF problemlos, aber mit dem **** IE natürlich mal wieder nicht. Kann mir einer sagen warum?
Mit ein paar grundlegenden Fehlersuchtechniken bekommt man das auch selbst raus. Das einfachste ist, die tatsächlich vorhandenen Werte auszugeben und mit den erwarteten Werten zu vergleichen: print_r($_POST) bzw. var_dump($_POST)
In der HTML-Spezifikation sind manche Details nicht völlig zweifelsfrei beschrieben und lassen deshalb Interpretationsspielraum. Meiner Meinung nach ist dies hier solch ein Fall.
Siehe 17.4.1 Control types created with INPUT unter "image". Da steht nicht, dass das name-value-Paar noch einmal extra aufgeführt werden muss.
echo "$verabschiedung $name";
danke!!!!!!!!
der fehler war einfach nur, dass ich auf $_POST['yes'] geprüft habe und auf $_POST['yes_x'] bzw. $_POST['yes_y'] hätte prüfen müssen! vielen dank! hätte ich bloß selbst daran gedacht $_POST mal auszugeben.
Da steht nicht, dass das name-value-Paar noch einmal >>extra aufgeführt werden muss.
das stimmt zwar, aber nach tests mit firefox habe ich gemerkt das ich zumindestens den value angeben muss (der war für mich nämlich auch unlogisch), sonst funktionierte das nicht!
wie auch immer...tausend dank! ich sitz da seit tagen dran und hatte auch ewig gegoogelt.!
viele grüße
ms
hi,
der fehler war einfach nur, dass ich auf $_POST['yes'] geprüft habe und auf $_POST['yes_x'] bzw. $_POST['yes_y'] hätte prüfen müssen!
Und das stand so nicht auf der von mir verlinkten Seite ...?
gruß,
wahsaga
» Und das stand so nicht auf der von mir verlinkten Seite ...?
wenn ich drüber nachdenke schon ;-)
aber ich hatte das nicht so verstanden, dir natürlich auch tausend dank! ihr habt mir beide sehr geholfen!