Gelöschte Beiträge eines Users wieder herstellen?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Mit diesem SQL Statement müsste das Wiederherstellen funktionieren (auch ungetestet):

Code: Alles auswählen

REPLACE INTO aktuelle_phpbb_posts_text SELECT * FROM backup_phpbb_posts_text WHERE poster_id = ?
moosi-adm
Mitglied
Beiträge: 6
Registriert: 17.11.2006 08:01

Beitrag von moosi-adm »

Pyramide hat geschrieben:Mit diesem SQL Statement müsste das Wiederherstellen funktionieren (auch ungetestet):

Code: Alles auswählen

REPLACE INTO aktuelle_phpbb_posts_text SELECT * FROM backup_phpbb_posts_text WHERE poster_id = ?
möchten den post mal aufgreifen; abfrage geht so nicht, da hier kein poster_id existiert..............

ansatz wäre eventl., folgende abfragen zu verbinden (leider bin ich ein sql-noob :oops: , hat wer ne idee?

Code: Alles auswählen

SELECT post_subject, post_text
FROM  phpBB_posts_text ,  phpBB_posts
WHERE phpBB_posts_text.post_id = phpBB_posts.post_id AND phpBB_posts.poster_id =6;

REPLACE INTO aktuelle_phpbb_posts_text SELECT * FROM backup_phpbb_posts_text WHERE poster_id = ?
thx + lg frank
moosi-adm
Mitglied
Beiträge: 6
Registriert: 17.11.2006 08:01

Beitrag von moosi-adm »

...sry für den doppelpost, aber hat keiner eine idee???? help me!!!!!! :oops:

hab schon stundelang geforscht und probiert, ich krieg die abfrage nicht zusammen -.-

lg frank
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Ungetestet (ob das funktioniert weiß ich auch nicht, weil mehrere DB's abgefragt werden)

Code: Alles auswählen

REPLACE INTO aktuelle_phpbb_posts_text (SELECT t.* FROM backup_phpbb_posts_text t, phpbb_posts p WHERE p.poster_id = 6 AND p.post_id = t.post_id)
Ansonsten halt ein Skript bauen das die Dinger erst aus der DB holt und dann wieder einfügt:

Code: Alles auswählen

$sql = "SELECT t.* FROM backup_phpbb_posts_text t, phpbb_posts p WHERE p.poster_id = 6 AND p.post_id = t.post_id";
$result = $db->sql_query($sql);
while($row = $db->sql_fetchrow($result))
{
$sql = "REPLACE INTO phpbb_posts_text (---HIER FELDNAMEN EINTRAGEN---) VALUES (---HIER INHALT IN DER GLEICHEN REIHENFOLGE, ZB " . $row['text'] . ", " . $row['feld_xyz'] . "---)";
$db->sql_query($sql);
}
Müsstest du noch die Feldnamen mit Kommata getrennt und dann die Inhalte einfügen, dann müsste es das ganze ersetzen falls das mit SQL direkt nicht funktioniert (muss es eigentlich auch eine direkte Abfragemöglichkeit für geben). Bitte nicht an den "Live Daten" testen sondern in einem Backupsystem!
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
moosi-adm
Mitglied
Beiträge: 6
Registriert: 17.11.2006 08:01

Beitrag von moosi-adm »

..vielen dank!!!!!!! sql-abfrage funtzt :D

supi!

lg frank
Antworten

Zurück zu „Coding & Technik“