MyBB.de Forum
IF-Bedingung in "message" möglich!? - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Entwicklung (https://www.mybb.de/forum/forum-74.html)
+--- Thema: IF-Bedingung in "message" möglich!? (/thread-37498.html)

Seiten: Seiten: 1 2


RE: IF-Bedingung in "message" möglich!? - Darth-Apple - 25.10.2020

Genau wie @itsmeJay erwähnt, können Sie die Anführungszeichen herausnehmen. Der Grund ist, dass die Anführungszeichen nicht benötigt werden (und ohne sie einfacher ist). Wir Programmierer programmieren normalerweise Variablen ohne sie, aber beide funktionieren gut. Smile

Sie haben fast alles richtig. Das einzige, was Sie vermissen, ist, dass in der Zeile "message" immer noch nur "$ lang-> text_2" und nicht Ihr neuer "Ergänzugstext" gespeichert ist, den Sie hinzufügen müssen, und dass zusätzliche Kommas PHP-Fehler verursachen. So etwas ist viel näher. (Ich kann nicht garantieren, dass dies perfekt funktioniert, aber wenn Sie Fehler erhalten, posten Sie den Fehler bitte hier und ich werde einen Blick darauf werfen.)

Etwas wie das:

Code:
$etext = "";
if($mybb_user['spaltenname'] == "inhalt")
{
    $etext = "Ergänzugstext";
}
//.....


$pm = array(
    "subject" => $mybb->get_input('subject'),
    "message" => $mybb->get_input('message') . $etext,
    "icon" => $mybb->get_input('icon', MyBB::INPUT_INT),
    "fromid" => $mybb->user['uid'],
        "do" => $mybb->get_input('do'),
        "pmid" => $mybb->get_input('pmid', MyBB::INPUT_INT),
    "ipaddress" => $session->packedip
);
//..... 

Möglicherweise müssen Sie noch Fehler beheben. Ändern Sie daher alles gemäß Ihren eigenen Anforderungen, wenn Ihr Code dies erfordert. Smile



Bearbeiten: Ich werde auch erwähnen, dass Sicherheit extrem wichtig ist. In den meisten Fällen ist das obige Beispiel schlecht, da wir die Eingabe nicht bereinigt haben, bevor wir sie in die Datenbank gestellt haben. In diesem speziellen Beispiel ist dies jedoch in Ordnung, da sich der PM-Handler bereits darum kümmert. Dies ist nicht immer der Fall, so dass viele sicher nachforschen müssen, wie Daten bereinigt werden können, bevor Sie "$ mybb-> get_input" für irgendetwas anderes verwenden. Denken Sie daran, wenn Sie in Zukunft andere Kerndateien ändern. Smile

lg Darth-Apple


RE: IF-Bedingung in "message" möglich!? - Gerti - 25.10.2020

@itsmeJAY
Deine Anregung "array" kann ich nachvollziehen, dafür besten Dank.

Da ich das bestehende PlugIn vom MrBrechreiz aus 2018 nur aktuaisieren und hierbei zugleich auf verschiedenene Sprachszenarien anpassen möchte, fehlt mir das Fachwissen (kommt so nach und nach) um das gesamte PlugIn den neueren Spezifikationen anzupassen.

@Darth-Apple
Die vorgeschlagene Umsetzung
PHP-Code:
"message" => $mybb->get_input('message') . $etext
funktionierte zunächst nicht, da
PHP-Code:
"message" => "$lang->sprachvariable_1"
(Sprachvariable in Anführungszeichen) gegeben ist.

Mit geschweifter Klammer:
PHP-Code:
'message' => "$lang->sprachvariable_1 {$etext}"
anstelle Punkt hat es dann funktioniert.

Besten Dank für die Unterstützung.