Diese Seite mit anderen teilen ...

Informationen zum Thema:
Forum:
Phorum.org Hilfe-Forum
Beiträge im Thema:
5
Erster Beitrag:
vor 16 Jahren, 7 Monaten
Letzter Beitrag:
vor 16 Jahren, 7 Monaten
Beteiligte Autoren:
Ulrich Anderburg, thomas, Ulrich Anderbur-g

Formularfelder in phorum vorbelegen

Startbeitrag von Ulrich Anderburg am 08.05.2001 12:22

Hallo,

an welcher Stelle muss phorum modifiziert werden,
um Formularfelder mit einem (änderbaren!) Wert
vorzubelegen ?

Ich will das Namens- und Betreff-Feld bei neuen
Postings vorbelegen. Der Name soll aus $REMOTE_USER
kommen, der Betreff ein fester String sein.
Allerdings soll dem User erlaubt sein, die
Voreinstellungen zu verändern oder ergänzen, daher
kann ich nicht einfach die p_author - Variable auf
einen festen Wert setzen.

Da ich die innere Logik von Phorum noch nicht ganz
durchschaut habe, wäre ich für einen Tipp dankbar,
wo im Code die geeignete Stelle für Anpassungen wäre.

Gruss,
Ulrich

Antworten:

ich würd include/form.php probieren ;-).

von thomas - am 08.05.2001 15:53
Naja, ganz doof bin ich ja nicht ;-), an der form.php
hab ich schon geschraubt. Ich definiere zuvor
in der common.php zusätzliche eigene Variablen,
die ich dann immmer zur Verfügung habe, wenn ich sie
brauche.

Allerdings ist es ja so,dass jedwede Änderung an
Variablen in form.inc immer das überschreibt, was
der User eingetippt hat. Wenn ich also p_author
oder eine andere Variable (z.B. den Betreff) fest
vorbelege, der User dann den Wert ändert und dann in
die Vorschau geht, wird in der form.php wieder der
Defaultwert restauriert - das ist nicht gewollt.
Gewollt ist eine Vorgabe, die nur einmal beim
Laden des Formulars geholt wird, und ab dann soll
das gelten, was der User tippt.

Ich werde mal versuchen, die Vorbelegung aus den
Cookie-Werten zu modifizieren, so dass nicht der
cookie-Wert, sondern meine Werte geladen werden.
Mal schauen, ob das klappt.

Sollte jemand eine bessere Idee haben - nur zu,
her damit !

Gruss,
Ulrich

von Ulrich Anderbur-g - am 08.05.2001 17:11
warum willst Du die Variablen in common.php vorbelegen?
Belege doch die Variablen einfach nur in form.php und das nur, wenn die ursprünglichen Werte noch nicht belegt wurden ... doch ganz einfach oder? ;-)

von thomas - am 08.05.2001 17:25
Na, dann antworte ich mir mal selbst ausführlich, möge die Antwort anderen helfen, die am gleichen Problem arbeiten ;-)

Die Logik von Phorum in form.php ist so:

1 - Cookie auslesen
falls Name/Email leer, Werte aus Cookie nehmen
2 - falls Cookie leer und Felder leer,
Defaultwert nehmen (leerstring).

Zur Vorbelegung muss dafür gesorgt werden, dass
der gewünschte Defaultwert nur dann gesetzt wird,
wenn noch nichts eingetragen wurde, um Usereingaben
nicht zu überschreiben. D.h. am Anfang von form.php
folgendes abändern:

$name_cookie="phorum_name";
if(isset($$name_cookie) && empty($author)){
// cookie da, aber noch nichts ausgefüllt
$author=$$name_cookie . " ($tz_user) ";
}
elseif(!isset($author)){
// kein Cookie und ncihts ausgefüllt
$author=" Name eingeben ( $tz_user )";
}

(meine Variable tz_user wird vorher definiert, z.B.
in common.inc).

Einziges Problem: nachdem ich einmal gepostet
habe und das Cookie gesetzt ist, wird mein Default
beim nächsten Mal doppelt reingesetzt, weil er dann
schon Teil des Cookies geworden ist ... da muesste man
dann nochmal ein ereg nachschalten.

Gruss,
Ulrich

von Ulrich Anderburg - am 08.05.2001 17:29
Zur Information:
MySnip.de hat keinen Einfluss auf die Inhalte der Beiträge. Bitte kontaktieren Sie den Administrator des Forums bei Problemen oder Löschforderungen über die Kontaktseite.
Falls die Kontaktaufnahme mit dem Administrator des Forums fehlschlägt, kontaktieren Sie uns bitte über die in unserem Impressum angegebenen Daten.