Hallo
Du kannst die Buttons im aufgerufenen Skript über deren Namen oder auch, bei gleichem Namen, über den Wert (Beschriftung in value) unterscheiden. Eine Bedingung (if, [if else,] else) verzweigt dann in verschiedene Bearbeitungsmöglichkeiten.
Wie spreche ich die Buttons denn mit PHP an und wo mache ich das? Direkt nach dem Button?
Nach dem Button? Ich vermute, du hast die Arbeitsweise noch nicht intus. PHP ist eine serverseitige Skriptsprache. PHP-Skripte werden also auf dem Webserver, dort, von wo auch deine HTML-Dokumente ausgeliefert werden, ausgeführt.
Ein PHP-Skript rufst du über die Adresszeile des Browsers, einen Link oder auch über das Abschicken eines Formulars auf, wenn du dessen URL im action-Attribut notiert hast.
Beispiel:
HTML:
<form action="skript.php" method="post">
<input type="text" name="eingabe">
<input type="submit" name="actio1" value="Aktion 1">
<input type="submit" name="actio2" value="Aktion 2">
</form>
Das Formular enthält ein Eingabefeld und zwei Buttons zum Absenden des Formulars. Als Ziel wurde im action-Attribut das PHP-Skript skript.php im gleichen Verzeichnis angegeben. Wird das Formular nun abgeschickt, wird das PHP-Skript aufgerufen.
PHP-Skript:
<?php
if (!empty($_POST["actio1"]) and $_POST["actio1"]=="Aktion 1") {
// Das Skript wurde mit dem Button "actio1" aufgerufen,
// es wurde weiterhin erfolgreich auf die korrekte Beschriftung geprüft.
// Ab hier werden die Funktionen zur Verarbeitung der Formulareingabe notiert.
}
if (!empty($_POST["actio2"]) and $_POST["actio1"]=="Aktion 2") {
// Das Skript wurde mit dem Button "actio2" aufgerufen,
// es wurde weiterhin erfolgreich auf die korrekte Beschriftung geprüft.
// Ab hier werden die Funktionen zur Verarbeitung der Formulareingabe notiert.
}
?>
Die Unterscheidung nach den Absendebuttons erfolgt also in dem Skript, das die Formulareingaben verarbeitet, nicht im HTML-Formular selbst.
Tschö, Auge