DeeJTwoK
Erfahrenes Mitglied
Hi,
okay. Ich versuch noch mal das Problem mit den submit-Buttons zu erklären:
Bisher hat es ja nicht zuverlässig geklappt, dass du erkannt hast, welche Aktion du auf der zweiten Seite ausführen solltest: Löschen oder Hinzufügen.
Da du auf der ersten Seite ja EIN Formular mit ZWEI Buttons hast (einer für Löschen und einer für Hinzufügen) musst du anhand dieser Buttons irgendwie unterscheiden welche Aktion du auf der zweiten Seite ausführst.
Um zu sehen, welche Möglichkeiten man da hat hatte ich einen kleinen Test gemacht.
Dieser Test hat getestet
Letztendlich musst du dich aber nur für eine Option (1. oder 2.) entscheiden. Also ENTWEDER (GLEICHER Name):
ODER (UNTERSCHIEDLICHE Namen):
Die Beschriftung der Buttons (value="...") musst du natürlich noch anpassen, so dass es schön für den Benutzer aussieht.
Wenn du also die UNTERSCHIEDLICHEN Namen (Variante 2.) nimmst, könntest du auf deiner zweiten Seite so vorgehen:
Egal welcher Button gedrückt wird, der andere Button-Wert im $_POST[]-Array ist dann auf jeden Fall nicht gesetzt (Es können ja nicht beiden Buttons gleichzeitig gedrückt worden sein). Deshalb bekommst du eine PHP-Meldung wenn z.B. der submit_button_delete gedrück wurde, da der Wert für den submit_button_add nicht im $_POST[]-Array definiert ist:
Um diese Meldung zu vermeiden schlage ich dir Alternative 1. vor: Zwei Buttons mit dem GLEICHEN Namen (name="submit_button") mit schöner Beschriftung:
Bei dieser Variante kannst du auf der zweiten Seite so herausfinden welcher Button gedrückt wurde:
Auf diese Weise hast du nur EIN Feld im $_POST[]-Array (nämlich "submit_button") welches IMMER gesetzt ist, egal welcher Button gedrückt wurde. Also erhälst du keine Meldung von wegen "Notice: Undefined index".
okay. Ich versuch noch mal das Problem mit den submit-Buttons zu erklären:
Bisher hat es ja nicht zuverlässig geklappt, dass du erkannt hast, welche Aktion du auf der zweiten Seite ausführen solltest: Löschen oder Hinzufügen.
Da du auf der ersten Seite ja EIN Formular mit ZWEI Buttons hast (einer für Löschen und einer für Hinzufügen) musst du anhand dieser Buttons irgendwie unterscheiden welche Aktion du auf der zweiten Seite ausführst.
Um zu sehen, welche Möglichkeiten man da hat hatte ich einen kleinen Test gemacht.
Dieser Test hat getestet
- Was passiert wenn man den beiden Buttons (Hinzufügen und Löschen) den GLEICHEN Namen (name="submit_button") gibt.
- Was passiert wenn man den Buttons UNTERSCHIEDLICHE Namen (name="submit_button_add" und name="submit_button_delete") gibt.
HTML:
<html>
<body>
<form action="post2.php" method="POST">
<input type="submit" name="submit_button" value="ADD (submit_button)">
<input type="submit" name="submit_button" value="DELETE (submit_button)">
<input type="submit" name="submit_button_add" value="ADD (submit_button_add)">
<input type="submit" name="submit_button_delete" value="DELETE (submit_button_delete)">
</form>
</body>
</html>
HTML:
<input type="submit" name="submit_button" value="ADD (submit_button)">
<input type="submit" name="submit_button" value="DELETE (submit_button)">
HTML:
<input type="submit" name="submit_button_add" value="ADD (submit_button_add)">
<input type="submit" name="submit_button_delete" value="DELETE (submit_button_delete)">
Wenn du also die UNTERSCHIEDLICHEN Namen (Variante 2.) nimmst, könntest du auf deiner zweiten Seite so vorgehen:
PHP:
if (isset($_POST["submit_button_add"])) {
// Aktionen zum Hinzufügen ausführen
} else (isset($_POST["submit_button_delete"])) {
// Aktionen zum Löschen ausführen
} else {
// Fehlermeldung ausgeben
}
(Übrigens keine FEHLER-Meldung sondern nur ein Hinweis ("Notice"), also nichts besonders Schlimmes)Notice: Undefined index: submit_button_add in /home/americanblueva/public_html/Admin/Admin_pilot_anfragen_bearbeiten.php
Um diese Meldung zu vermeiden schlage ich dir Alternative 1. vor: Zwei Buttons mit dem GLEICHEN Namen (name="submit_button") mit schöner Beschriftung:
HTML:
<input type="submit" name="submit_button" value="Add pilot">
<input type="submit" name="submit_button" value="Delete pilot">
PHP:
if ($_POST["submit_button"]=="Add pilot") {
// Aktionen zum Hinzufügen ausführen
} else ($_POST["submit_button"]=="Delete pilot") {
// Aktionen zum Löschen ausführen
} else {
// Fehlermeldung ausgeben
}
Zuletzt bearbeitet: