Fehler beim Teilen eine Beitrages

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Fehler beim Teilen eine Beitrages

Beitrag von Leipziger »

folgende Fehlermeldung erhalte ich wenn ich versuche Threads zu teilen

Code: Alles auswählen

Could not update topics watch table

DEBUG MODE

SQL Error : 1196 Warning: Some non-transactional changed tables couldn't be rolled back

UPDATE forum_topics_watch SET topic_id = WHERE topic_id = 419 AND user_id IN (52, 118, 19, 52)

Line : 1497
File : modcp.php
Was genau muss ich da ändern, damit es wieder funktioniert?

Hier die betreffende Zeile

Code: Alles auswählen

					message_die(GENERAL_ERROR, 'Could not update topics watch table', '', __LINE__, __FILE__, $sql);
Nachtrag hier der ganze Abschnitt.

Code: Alles auswählen

				// Update topic watch table, switch users whose posts
				// have moved, over to watching the new topic
				$sql = "UPDATE " . TOPICS_WATCH_TABLE . "
					SET topic_id = $new_topic_id
					WHERE topic_id = $topic_id
						AND user_id IN ($user_id_sql)";
				if (!$db->sql_query($sql))
				{
					message_die(GENERAL_ERROR, 'Could not update topics watch table', '', __LINE__, __FILE__, $sql);
				}

				$sql_where = (!empty($HTTP_POST_VARS['split_type_beyond'])) ? " post_time >= $post_time AND topic_id = $topic_id" : "post_id IN ($post_id_sql)";

				$sql = 	"UPDATE " . POSTS_TABLE . "
					SET topic_id = $new_topic_id, forum_id = $new_forum_id
					WHERE $sql_where";
				if (!$db->sql_query($sql, END_TRANSACTION))
				{
					message_die(GENERAL_ERROR, 'Could not update posts table', '', __LINE__, __FILE__, $sql);
				}

				sync('topic', $new_topic_id);
				sync('topic', $topic_id);
				sync('forum', $new_forum_id);
				sync('forum', $forum_id);

				$template->assign_vars(array(
					'META' => '<meta http-equiv="refresh" content="3;url=' . "viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&sid=" . $userdata['session_id'] . '">')
				);

				$message = $lang['Topic_split'] . '<br /><br />' . sprintf($lang['Click_return_topic'], '<a href="' . "viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&sid=" . $userdata['session_id'] . '">', '</a>');
				message_die(GENERAL_MESSAGE, $message);
			}
		}
		else
		{
Ich hoffe es hilft Euch und damit mir. :wink:
Zuletzt geändert von Leipziger am 24.02.2006 21:57, insgesamt 1-mal geändert.
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Beitrag von Leipziger »

Achtung ich hab mal den ganzen Cod des Abschnitts eingefügt.
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

Pack mal bitte eine Kopie des kompletten modcp.php hier als Downloadlink rein. Aus dem Part ist nur zu erkennen, dass die Variable $new_topic_id fälschlicherweise leer ist.

Gruß,
Tekin
• prof. phpbb-Installation, Reparatur, Rettung nach Hackattacken, sowie PHP/JS Programmierung aller Art
Zend Certified Engineer, Linux Administrator und die Sicherheit von 34 Jahren Programmiererfahrung
• Interesse? Kontakt unter t.birduezen@web-coding.eu
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Beitrag von Leipziger »

Danke für die Antwort hier der Link http://computer.selfhost.tv/modcp.php.zip
Hoffe es hilft.
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

Hast Du irgendwelche Mods installiert, die modcp.php und/oder /db/mysql4.php (oder halt nur /db/mysql.php) verändet haben?

Das Problem entsteht scheinbar dadurch, das diese Zeile

Code: Alles auswählen

$new_topic_id = $db->sql_nextid();
die normalerweise die nächste Topic_id zurückgeben soll, nichts zurück gibt.

Mach mal folgendes. Suche nach

Code: Alles auswählen

$new_topic_id = $db->sql_nextid();
und füge darunter ein

Code: Alles auswählen

				if ( $new_topic_id === FALSE )
				{
				  $sql = "SELECT MAX(topic_id) AS max_id FROM " . TOPICS_TABLE;
				  if ( !$result = $db->sql_query($sql) )
				  {
				    message_die(GENERAL_ERROR, 'Could not obtain next topic id');
				  }
				  $row = $db->sql_fetchrow($result);
				  $new_topic_id = intval($row['max_id']);
				}
Achtung, dieser Code wurde nicht getestet, sondern frei aus dem Kopf geschrieben. Er sollte funktionieren, aber zur Sicherheit mach immer erst ein Backup!

-EDIT- Upsi, ein winziger Fehler war drin. Schnell begradigt. ;)

Gruß,
Tekin
• prof. phpbb-Installation, Reparatur, Rettung nach Hackattacken, sowie PHP/JS Programmierung aller Art
Zend Certified Engineer, Linux Administrator und die Sicherheit von 34 Jahren Programmiererfahrung
• Interesse? Kontakt unter t.birduezen@web-coding.eu
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Beitrag von Leipziger »

Danke

aber das hat nicht geholfen gleiche Fehlermeldung.

Mods sind glaube ich -Merge (Beiträge zusammen), DB Maintenance, Chat, ip-tracking-

habe mal alles in diese Datei gepackt.
http://computer.selfhost.tv/forum.zip
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

Kleiner Rat, mach mal die config.php aus dem zip heraus. Das was da drin steht, geht keinem ausser Dir was an.

Tekin
• prof. phpbb-Installation, Reparatur, Rettung nach Hackattacken, sowie PHP/JS Programmierung aller Art
Zend Certified Engineer, Linux Administrator und die Sicherheit von 34 Jahren Programmiererfahrung
• Interesse? Kontakt unter t.birduezen@web-coding.eu
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Beitrag von Leipziger »

Gut mache ich.

Aber das Passwort stimmte sowieso nicht. :grin:

Aber wo liegt mein Fehler?
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Beitrag von Leipziger »

Habs gerade mal getestet Beiträge zusammenfügen funktioniert nur nicht Beiträge teilen da bekomme ich immer die oben genannte Fehlermeldung auch mit dem neuen Code.

Woran kann es liegen?
Leipziger
Mitglied
Beiträge: 31
Registriert: 05.09.2004 16:42

Beitrag von Leipziger »

Hat den keiner eine Idee?

Über die Brücke des zusammenfügen funktioniert das ja.
Aber es ist doch besser das gleich teilen zu können. Vereinfacht doch de Arbeit. :wink:
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“