Name des SUBMIT-Buttons ermitteln

Hallo.

ich habe ein folgendes problem:

an manchen stellen meiner PHP-Seite brauche ich
den Namen des SUBMIT-Buttons der eine
Aktion ausgelöst hat.

es gibt manchmal mehrere Submit-Buttons auf der Seite,
und ich muss auf der nächsten Seite wissen welcher Button
eigentlich angeklickt wurde. Um genauer zu sein seien Namen
brauche ich.

ich darf nicht allen Submit-Buttons den gleichen
Namen geben, sonst kann ich nichts ansteuern. das
würde gehen wenn es auf jeder Seite höchstens
einen SUBMIT-Button gäbe.

Gibt es eine Möglichkeit im PHP den Namen des ACTION
auslösenden SUBMIT-Buttons zu ermittelen?
vielleicht gibt es so etwas ähnliches wie

 $HTTP\_POST\_VARS 

?
mit einer Typ-Angabe der Formvariable?

Hallo!
Eine Möglichkeit, wäre z.B., daß Du ein hidden-Feld übergibst. Dann wüßtest Du, wenn die Variable xy den Wert abc hat, wurde Formular 1 der Submit-Button gewählt.
Gruß
Florian

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

es gibt manchmal mehrere Submit-Buttons auf der Seite,
und ich muss auf der nächsten Seite wissen welcher Button
eigentlich angeklickt wurde. Um genauer zu sein seien Namen
brauche ich.

du weist doch aber, wie deine buttons heissen…

if (isset($\_POST['btname1']))
 { action1; }
elseif (isset($\_POST['btname2']))
 { action1; }

wenn sie automatisch durchnummeriert sein sollten etwas in der art:

$t0 = ",".implode(",",array\_keys($\_POST)).",";
if (ereg('btname([0-9]+),'),$t0,$matches)
 { 
 array\_shift($matches);
 foreach ($matches as $k)
 { handle alle submitbuttons, die gedrueckt waren }
 }

auf die lösung bin ich aber auch schon gekommen.
das würde auf jedan fall funktionieren, ist aber
mit viel arbeit verbunden. es sind sehr viele dateien
davon betroffen.

ich möchte in abhängigkeit von dem submit-button unterschiedliche
meldungen ausgeben. die meldungen werden sich in einer datenbank
befinden und sollen noch in mehreren sprachen sein.
damit man das halbwegs managen kann muss möglichst viel
automatisch ablaufen.

ich dachte, dass es irgendwie möglich ist zumindes den typ
der $HTTP_POST_VARS zu erfahren. dann könnte ich den
submit-button über eine schleife erfahren.
schliesslich wird eine FORM nur durch ein SUBMIT ausgelöst.
DANKE

GRUSS
webandi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

wenn ich am anfang des projektes stehen würde, wäre das
gestimmt eine gute lösung. aber jetzt müsste ich sehr
viel buttons umbenennen uns die dazugehörigen aktionen.
ausserdem sind so durchnummerierte buttons nicht
gerade leidch zu warten. überall steht dann button1 oder button2…
besser finde ich

checkinput

oder

del

trotzdem danke für die schnelle hilfe.

GRUSS
webandi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

wenn ich am anfang des projektes stehen würde, wäre das
gestimmt eine gute lösung. aber jetzt müsste ich sehr
viel buttons umbenennen uns die dazugehörigen aktionen.
ausserdem sind so durchnummerierte buttons nicht
gerade leidch zu warten. überall steht dann button1 oder
button2…
besser finde ich

checkinput

oder

del

jetzt verstehe ich dein problem nciht mehr.
also weisst du doch wie deine buttons heissen, und variante 1 muesste fuer dich tun, nciht?
welche sinn sollte es sonst machen einen submitbutton zu finden?

Hi,

auf die lösung bin ich aber auch schon gekommen.
das würde auf jedan fall funktionieren, ist aber
mit viel arbeit verbunden. es sind sehr viele dateien
davon betroffen.

na, dann hast Du ja jetzt für die Konzeptionsphase Deines nächsten Projektes gelernt.

ich dachte, dass es irgendwie möglich ist zumindes den typ
der $HTTP_POST_VARS zu erfahren.

Diese Information wird per HTTP nicht übertragen. Dir stehen nur name/value-pairs zur Verfügung.

Cheatah

Also es ist so: in einem PHP-Script wird ein sachverhalt gemanagt.
sagen wir ein modul. so ein modul wird in einem CMS ein einer
bestimmten stelle includet. Also ein CMS kümmert sich um die links,
grafiken und gestaltung und meine module erledigen spezail-aufgaben.

jetzt kommt die schnitt-stelle zwischen CMS und modul.
auf der webseite (aus dem CMS generiert) soll eine
aktionsleiste erscheinen, die anzeigen soll was gerade passiert.

ich brauche im CMS eine halbwegs standardiesierte schnittstelle
zwischen meinen modulen (PHP-Script mit SUBMIT-Button) und
CMS.
so ist das. :smile:)

das macht also sinn zu wissen, welcher button angeklickt wurde.

mein CMS soll universell bleiben.

GRUSS
webandi

ps
hoffentlich ist jetzt mein problem klarer

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

DANEK für die antwort.
jetzt bin ich schlauer.

))

vielleicht gibt es eine möglichkeit den variablentyp zu
erfahren (hidden, select, submit …)?

das geht bestimmt auch nicht.

GRUSS
webandi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

Diese Information wird per HTTP nicht übertragen. Dir stehen
nur name/value-pairs zur Verfügung.

vielleicht gibt es eine möglichkeit den variablentyp zu
erfahren (hidden, select, submit …)?

das geht bestimmt auch nicht.

wieso „auch“? Exakt darauf bezog sich meine Antwort. Mit Variablen hat das ganze übrigens absolut (absolut!) nichts zu tun.

Cheatah