Verfasst: 16.12.2006 18:51
schau noch mal genau nach, ob Du den Code an der richtigen Stelle drin hat. Wie schon geschrieben, es klappt, aber leider (noch) nicht perfekt.
phpBB.de - Die deutsche phpBB-Community
https://www.phpbb.de/community/
Was denn genau, Tommy?Code:
$sql = "UPDATE " . TOPICS_TABLE . "
SET topic_status = " . TOPIC_LOCKED . "
Das erste,
Code:
if ( $lock )
{
$sql = "UPDATE " . TOPICS_TABLE . "
SET topic_status = " . TOPIC_LOCKED . "
WHERE topic_id = $topic_id";
if ( !($result = $db->sql_query($sql)) )
{
das letzte,
Code:
$sql = "UPDATE " . TOPICS_TABLE . "
SET topic_status = " . TOPIC_LOCKED . "
WHERE topic_id IN ($topic_id_sql)
AND forum_id = $forum_id
AND topic_moved_id = 0";
if ( !($result = $db->sql_query($sql)) )
oder beide ?
Ich konnte bisher keine Malfunktionen feststellen. Der Titel wird "editiert" und nach dem entsperren kann jeder wieder posten. Auch als Gast in einem öffentlichen Bereich. Alles was man nach dem Entsperren machen muss, ist den Titel zu editieren und das "gesperrt" entfernen.Finde:
Ersetze durch:Code: Alles auswählen
if ( $lock ) { $sql = "UPDATE " . TOPICS_TABLE . " SET topic_status = " . TOPIC_LOCKED . " WHERE topic_id = $topic_id"; if ( !($result = $db->sql_query($sql)) ) {
Code: Alles auswählen
if ( $lock ) { $sql = "UPDATE " . TOPICS_TABLE . " SET topic_status = " . TOPIC_LOCKED . ", topic_title = CONCAT('[Gesperrt] ' , topic_title) WHERE topic_id = $topic_id"; if ( !($result = $db->sql_query($sql)) ) {
Code: Alles auswählen
$sql = "UPDATE " . TOPICS_TABLE . "
SET forum_id = $new_forum_id
WHERE topic_id = $topic_id";
if ( !$db->sql_query($sql) )
Code: Alles auswählen
$sql = "UPDATE " . TOPICS_TABLE . "
SET topic_status = " . TOPIC_LOCKED . ", topic_title = CONCAT('[Gesperrt] ' , topic_title)