ActiveUpdate-Homepage :: Dokumentation :: Interface :: Steuerung von ActiveUpdate über CGI

In diesem Kapitel der Dokumentation kümmern wir uns darum, wie man mit ActiveUpdate interagieren kann.

Dabei gibt es zwei Möglichkeiten: entweder man sitzt direkt an einer Server-Konsole und versorgt ActiveUpdate mit Daten (darauf wollen wir hier nicht näher eingehen, die Leute, die mit Serverkonsolen arbeiten, wissen normalerweise auch, wie man CGI "emuliert"), oder man nutzt das CGI-Interface.

Zunächst eine Bemerkung: CGI wird nicht immer mit Hilfe von Formularen im Web realisiert. Es gibt genauso die Möglichkeit, Daten via CGI unter Benutzung der URL-Zeile des Browsers zu übertragen. Beispiel: die URL http://www.activeupdate.de/cgi-bin/ActiveUpdate4.pl?Modus=ADMIN123 macht genauso Gebrauch von der CGI-Schnittstelle wie ein Formular, das auf einer x-beliebigen HTML-Seite steht.

Es ist wichtig, zu verstehen, dass man im Grunde alles, was man über die URL-Zeile machen kann, auch mit Formularen machen kann. Hier zwei Beispiele, um das Ganze zu verdeutlichen:

URL Formular-Äquivalent in HTML
http://www.activeupdate.de/cgi-bin/AcUp4.pl?Modus=ADMIN123

<form action="http://www.activeupdate.de/cgi-bin/AcUp4.pl">
<input type="text" value="ADMIN123" name="Modus">
</form>

http://www.activeupdate.de/cgi-bin/AcUp4.pl?Modus=GET&Disable
DayLine
=1&TemplateFile=template
_full.htm
<form action="http://www.activeupdate.de/cgi-bin/AcUp4.pl">
<input type="text" value="GET" name="Modus">
<input type="text" value="1" name="DisableDayLine">
<input type="text" value="template_full.htm" name="TemplateFile">
</form>

Wie Sie sehen, haben wir bestimmte Teile eingefärbt. Blau sind die jeweiligen Argumente selbst, rot sind die Namen der Argumente. Aber wir wollen hier nicht abschweifen, für eine detailiertere Erklärung sollten Sie sich die entsprechenden Kapitel in SelfHTML ansehen.

In den folgenden Abschnitten gehen wir davon aus, dass Sie wissen, was ein Argument (besser: der Wert eines Arguments, in den Beispielen blau eingefärbt) ist und was ein Argumentname ist (im Beispiel rot). BTW, ActiveUpdate implentiert die Übernahme der Argumente in der Moduldatei arguments.pl.

Bevor wir die einzelnen Argumente erläutern, sollten Sie wissen, dass sehr oft Zusatzargumente benötigt werden. Sehr hilfreich ist auch der untere Teil der Moduldatei "comments.pl". Sehr oft müssen Argumente gar nicht angegeben werden. Wirklich benötigt werden eigentlich nur Modus und (daraus resultierend) eventuell Arguments.

Kommen wir zu einer Erklärung der einzelnen Argumentnamen:

Argumentname Erlaubte Werte Erklärung
Modus GET, SET, ARCHIV, VORSCHAU, SHOWTEMPLATE, ADMINSHOW, ADMINSET, GETSCR, LAUNCHPLUGIN, RIGHTSET, ADMIN123, FIELDSET, DELCACHE

GET=Ausgabemodus

SET=Datenbankveränderungen. Erwartet Passwort.

ARCHIV=Zeigt Archivübersicht

VORSCHAU=Vorschau-Modus

SHOWTEMPLATE=Zeigt Template

ADMINSHOW=Zeigt Admin-Konsole. Erwartet Passwort.

ADMINSET=Setzt Admin-Einstellungen. Erwartet Passwort

GETSCR=Zeigt Screenshot

LAUNCHPLUGIN=Startet PlugIn

RIGHTSET=Setzt Rechtedatei. Erwartet Passwort.

ADMIN123=Zeigt Startseite von AcUp

FIELDSET=Setzt Datenbankfelder. Erwartet Passwort

DELCACHE=Löscht Cache

UserName Jeder gültige Login-Name Über dieses Argument wird der Benutzername übergeben
Password Jedes gültige Passwort Über dieses Argument wird das Passwort übergeben.
Arguments

Hängt vom verwendeten Modus ab:

Modus=GET

Das eröffnet uns verschiedene gültige Alternativen (Erklärung in blau, ein in Klammern stehendes Wort bezieht sich immer auf die Syntaxdefinition):

Specific|||Wert|||Datenfeld
Erwartet den (Wert) im Datenfeld (Datenfeld)


StartTilStop|||Start|||Stop|||Datenfeld Sieht (Datenfeld) als Zeitangabe und gibt alles aus, was zwischen (Start) und (Stop) liegt. Als Datumsformat sollte TTMMYYYY verwendet werden.

LastDays|||Tage|||Datenfeld
Sieht (Datenfeld) als Zeitangabe und gibt alles aus, was in den letzten Tagen (bezogen auf (Datenfeld)) gepostet wurde


Alphabetical|||Buchstabenliste|||Datenfeld
Alle Einträge, in denen (Datenfeld) mit einem der Buchstaben aus (Buchstabenliste) beginnt, werden erkannt

DataSet|||Nummer
Gibt den Datensatz Nummer (Nummer) aus.

FullText|||Suchbegriff|||Datenfeld
Gibt die Datensätze aus, bei denen (Datenfeld) den String (Suchbegriff) enthält

Modus=SET

Hier gibt es wieder mehrere gültige Werte

NEW
Erstellt neuen Datensatz (siehe ACUP4DFW*)

REPLACE|||Datensatznummer
Ersetzt Datensatz (Datensatznummer) (siehe ACUP4DFW*)

DELETE|||Datensatznummer
Löscht Datensatz (Datensatznummer)

Modus=SHOWTEMPLATE

Unsere diesmal einzige Option:

Template-Dateiname
Zeigt (Template-Dateiname) an und lässt es durch den Parser laufen.

Modus=GETSCR

Hier werden Eingaben nach diesem Schema verlangt:

Datensatznummer|||Screenshotnummer
Zeigt den Screenshot (Screenshotnummer) aus dem Datensatz (Datensatznummer) an.

Modus=LAUNCHPLUGIN

Unser Eingabeschema hier:

Plugin-Name|||Beliebige Argumente
Startet das PlugIn (PlugIn-Name) und übergibt ihm die in (Beliebige Argumente) angegebenen Daten

Wird verwendet, um Zusatzargumente für die verschiedenen Modi zu setzen.

TemplateFile Beliebiger Dateiname, der im HTML-Verzeichnis vorhanden ist. Legt für den GET-Modus das zu verwendende Template fest
ToSort 0 oder 1 Wenn 1, dann werden die Ergebnisse eines GET-Aufrufs sortiert
SortBy

Datenfeld|||SortierModus
Sortiert die Datensätze nach dem jeweiligen Inhalt des Datenfeldes (Datenfeld). Bei (SortierModus) sind "Digits" (basiert auf Zahlenvergleich) und "Chars" (alphabetisch) erlaubt.

Legt fest, wonach und wie sortiert werden soll.
Boost 0 oder 1 Bei 1 wird die Ausgabe bestimmter Daten schneller, dafür werden aber auch PlugIns, Screenshots und DDF-Datenfelder deaktiviert.
DisableDayLine 0 oder 1 Deaktiviert die Trennlinie zwischen Datensätzen verschiedener Tage, wenn das Argument auf 1 steht.
PutAround 0 oder 1 Wenn 1, dann nimmt das Datei eine Templatedatei und "stülpt" sie über die Ergebnisse der GET-Abfrage. Wenn AroundFile nicht nicht angegeben, wird die Standarddatei (aus der einstellungen.dat) genommen.
AroundFile Dateiname, der im HTML-Verzeichnis existiert Hiermit kann die Around-Datei festgelegt werden. Wenn dieses Argument nicht gesetzt wird, dann wird die Standard-Arounddatei aus der einstellungen.dat genommen.
MoreAround 0 oder 1 Wenn das Ergebnis einer Abfrage mehr als einmal in dem umgebenden Around-Template vorkommt, auf 1 setzen.
ACUP4DFW* Im Grunde jeder beliebige String Wird verwendet, um Schreibzugriffe auf ActiveUpdate durchzuführen. Deshalb kann ein Verwendungszweck auch nicht eindeutig festgelegt werden.
ACUP4PLW* Im Grunde jeder beliebige String Wird verwendet, um Argumente an PlugIns zu übergeben.