Moderieren von Konvertierten Beiträgen

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
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.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

hab mir gerade mal die DB genauer angeschaut, da gibts einige Zeilen mit einer topic_id die es gar nicht gibt. Gibts da ne Möglichkeit all diese zu löschen ohne die DB von Hand durchsuchen zu müssen?

Volle
Benutzeravatar
Mister_X
Ehemaliges Teammitglied
Beiträge: 7102
Registriert: 24.05.2001 02:00
Wohnort: Augsburg

Beitrag von Mister_X »

öh woher weißt du, dass es diese Themen nicht gibt ?
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

wenn ich das Thema von Hand aufrufe erscheint die Meldung:

Code: Alles auswählen

Das gewählte Thema oder der Beitrag existiert nicht.
obwohl in der DB eine Teile mit der topic_id vorhanden ist.

Beispiel:

http://forum.berlin133.server4free.de/v ... .php?t=229

Der selbe topic_title ist bei der ID 1437 eingetragen, der Beitrag ist auch wirklich vorhanden.

Volle
Volle
Mitglied
Beiträge: 54
Registriert: 06.04.2003 20:48
Wohnort: Asselfingen
Kontaktdaten:

Beitrag von Volle »

so ich hab mich nun mal selbst an das Problem rangemacht und hab mir folgendes Script geschrieben:

Code: Alles auswählen

<?php
include("config.php");
mysql_connect("$dbhost", "$dbuser", "$dbpasswd");
mysql_select_db("$dbname");
$pc = 1;
$i = 0;
while($pc < 2020)
{
	$gettopic = mysql_query("SELECT topic_id FROM ".$table_prefix."topics WHERE (topic_id LIKE '".$pc."') LIMIT 0, 1") or die ("Fehler 103: Anfrage fehlgeschlagen");
	$getpost = mysql_query("SELECT topic_id FROM ".$table_prefix."posts WHERE (topic_id LIKE '".$pc."') LIMIT 0, 1") or die ("Fehler 103: Anfrage fehlgeschlagen");
	if($row = mysql_fetch_array($gettopic, MYSQL_ASSOC))
	{
		if($row2 = mysql_fetch_array($getpost, MYSQL_ASSOC))
		{
		}
		else
		{
			echo $row['topic_id'];
			echo " - keine Postings mit dieser Topic ID - löschen...<br>";
			mysql_query("DELETE FROM ".$table_prefix."topics WHERE (topic_id LIKE '".$pc."') LIMIT 1");
			$i = ++$i;
		}
	}
	$pc = ++$pc;
}
echo "<br>$i Zeilen gelöscht!";
mysql_close(mysql_connect("$dbhost", "$dbuser", "$dbpasswd"));
?>
spricht was dagegen die DB so zu bearbeiten oder kann man das gefahrlos ausführen?

Volle
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“