Markus Clos: Verwaltung von Gästebuch-Einträgen

Beitrag lesen

Guten Morgen, liebes Forum,

Entschuldigt bitte vielmals die Länge meines Postings, aber ich muss weiter ausholen, um Missverständnissen vorzubeugen:

Meinem Problem liegt folgende Ausgangssituation zugrunde:

Ich habe, nach erfolgreicher Anmeldung als Administrator, folgende Dateien, die "zusammenspielen":

GaestebuchAdmin.php
   (Diese Datei kümmert sich um die Steuerung der Aktionen über
    den switch-Befehl)

FunktionenGaestebuchAdmin.php
   (Hier gebe ich alle Einträge der CSV-Datei "Eintraege.csv" aus.
    Jeder Eintrag wird für die Verwaltung, wie Eintrag
    kommentieren, Eintrag ändern oder auch Eintrag löschen,
    um entsprechende Schaltflächen erweitert:
      <input name="..." type="image" ...>
    Desweiteren kümmert sich diese Datei um alle Meldungen, die mit
    der Verwaltung zusammenhängen, wie Sicherheitsabfragen.)

FunktionenGaestebuchAdmin.js
   (Dazu später genauere Details)

Leider habe ich, für mich, noch keine andere funktionierende Möglichkeit habe, auf die verschiedenen Aktionen (Eintrag kommentieren, Eintrag ändern, Eintrag löschen, etc.) zu reagieren, als mit versteckten Feldern zu arbeiten.

Die Einträge werden innerhalb des <form>-Tags ausgegeben, da ich sonst auf die versteckten Felder nicht reagieren kann.

Im <form>-Tag kann ich jetzt zwar das Ziel des Formulares eingeben (in meinem Fall immer die Datei selber), die Einrichtung der versteckten Felder gestaltet sich aber schwierig, da ich ja unterscheiden muss, ob ich einen Eintrag kommentieren, ändern oder löschen will.

Die einzige Möglichkeit, die sich hier für mich eröffnet, ist, bei Anklicken einer Schaltfläche eine entsprechende Javascript-Funktion aufzurufen, die dann die zugehörigen versteckten Felder erzeugt.

<form action="GaestebuchAdmini.php"
      method="post"
      onsubmit="return VersteckteFelderErzeugen (Aktion)">

Diesen Umstand wollte ich in der JS-Datei "FunktionenGaestebuchAdmin.js" berücksichtigen:

function VersteckteFelderErzeugen (Aktion)
{
  switch (Aktion)
  {
    case "EintragKommentieren":
    {
      document.write ('<input type="hidden" name="Aktion" value="EintragKommentieren">');
      document.write ('<input type="hidden" name="FormularGesendet" value="0">');
      break;
    }
    case "..."
    {
      ...
    }
    ...
  }
}

Der zugehörige Link bei den einzelnen Einträgen ist innerhalb der Datei "FunktionenGaestebuchAdmin.php" folgendermassen definiert:

echo '<input type="image"
             src="..."
             onclick="VersteckteFelderErzeugen ('EintragKommentieren')">';

Aber leider funktioniert mein Vorhaben nicht.

Ich bekomme die Fehlermeldung, dass das ein unerwarteter Aufruf oder Zugriff erfolgt ist.

Wo liegt der Fehler ?

Gibt es für mein Vorhaben desweiteren nicht eine andere Variante, bei der ich einfacher, übersichtlicher und damit auch weniger fehleranfällig auf verschiedene Aktionen reagieren kann ?

Vielen Dank für Eure Antworten.

Mit freundlichem Gruss, Marcus Clos