Seite 1 von 1

Voreingestellte E.Mail per Klick ohne Editiermöglichkeit

Verfasst: 17.03.2009 22:35
von webazubi
Hallo. Möchte per Klick auf Button oder Link eine festgelegte E-Mail an alle Mitglieder einer Gruppe schicken. Das heißt der Benutzer soll nicht mehr die Editiermöglichkeit haben, sondern nur auf einen Link Klicken und die Gruppe wird im Hintergrund mit der Message "ich bin im Urlaub" oder so benachrichtigt.
Habe jetzt versucht aus dem Nachrichteneditierfenster die notwendigen Variablen rauszusuchen und zu füllen, so dass bislang (immerhin) auf Mausklick das Nachrichteneditierfenster aufgerufen wird und der voreingestellte Text für Subject und Message sowie Empfänger bereits voreingestellt ist.
(Das ist zwar noch nicht das was ich will, also ohne Editierfenster zu arbeiten, aber es scheint mir der erste Schritt zur Lösung).
Aber trotzdem kommt noch die Meldung "Das übermittelte Formular war ungültig. Versuchen Sie erneut, das Formular abzusenden." Offenbar fehlen noch ein paar Variablen, und ich weiß nicht welche.
Bislang mache ich u.a.:

Code: Alles auswählen

$group_list = '10';
$subject = "Urlaub";
$message = "Bin im Urlaub";
$s_action = append_sid("{$phpbb_root_path}ucp.php?i=pm&mode=compose&action=post", true, $user->session_id);
$s_hidden_fields = build_hidden_fields(array('group_list' => $group_list, 'message' => $message, 'subject' => $subject));
Die Hidden-Fields und das Ziel des Formulars habe ich im Template, so dass ich aufrufe:

Code: Alles auswählen

<form action="{S_POST_ACTION}" method="post" name="postform">
{S_HIDDEN_FIELDS}
...
Ergo: Der Nachrichteneditor öffnet sich, zeigt Empfänger, Betreff und Message richtig (also mit den voreingestellten Werten) an, aber trotzdem kommt die oben genannte Fehlermeldung.

Könnt Ihr mir sagen was ich noch an Werten übergeben muss? Oder wie ich direkter zu meinem Ziel komme?
Danke

Re: Voreingestellte E.Mail per Klick ohne Editiermöglichkeit

Verfasst: 17.05.2009 13:49
von webazubi
Sorry fürs pushen nach 2 Monaten. Die Frage ist aber immer noch offen und ich bin nicht weiter gekommen.

Re: Voreingestellte E.Mail per Klick ohne Editiermöglichkeit

Verfasst: 20.05.2009 22:34
von Boecki91
Ich versteh die Frage nicht so ganz.


Ab er ich gebe dir den Tipp: Alles was du mit POST GET oder irgendwas anderes von Aufruf zu Aufruf schleifst kann man es verändern, das Blöde ist das das der normale "dumme" User nicht kann, ein Spambot jedoch schon.

Re: Voreingestellte E.Mail per Klick ohne Editiermöglichkeit

Verfasst: 21.05.2009 09:15
von gn#36
Es gibt da so eine Funktion die einen Hash zum Formular als verstecktes Feld hinzufügt. Die wird immer überprüft und wenn sie fehlt zurückgewiesen (Botschutz).

Such mal in der includes/functions.php nach add_form_key und check_form_key ;)

Wenn du den Form Key zum passenden Formular hinzufügst sollte der Fehler nicht mehr kommen.

Du solltest dir allerdings darüber im klaren sein, dass du dem User so nicht wirklich vorgeben kannst was er sendet, denn selbst wenn du das alles in versteckte Felder packst kann man das beliebig ändern - schließlich kann man beliebig steuern was der Browser so an Daten verschickt. Es gibt z.b. für Entwickler eine ganze Reihe an Tools mit denen man Felder bearbeiten kann, die man eigentlich nicht bearbeiten können sollte als Plugins für verschiedene Browser.
Fest vorgeben kannst du das nur, wenn du das ohne Umweg über den Browser bearbeitest.