problem bei Benutzung von quote=name

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.
studentl
Mitglied
Beiträge: 16
Registriert: 04.10.2006 17:50

Beitrag von studentl »

also, der erste teil steht oben, in meinem post, hier die datei um die db zu reparieren (nicht schön aber von mir ^^ )

Code: Alles auswählen

<?php

// Datei: phpDbUpdate.php
// author: studentl (c)2006

 define('IN_PHPBB', true);
 $phpbb_root_path = './';
 
 // Load Configuration
 include($phpbb_root_path . "extension.inc");
 include($phpbb_root_path . "config." . $phpEx);
 include($phpbb_root_path . "includes/db." . $phpEx);
 
	
	$sql = "SELECT post_id, bbcode_uid, post_text FROM " . $table_prefix . "posts_text WHERE `post_text` LIKE '%[quote=%]%'";
	
	$result = $db->sql_query($sql);
	
	
	while  (($row =mysql_fetch_array($result)))
	{	
		$row['post_text'] = str_replace("\n", "<br />",$row['post_text']);
		$row['post_text'] = str_replace('[quote="' , '[quote:' . $row['bbcode_uid'] . '="', $row['post_text'] );
		$row['post_text'] = str_replace('"]' , '"]', $row['post_text'] );
 		$row['post_text'] = str_replace("[/quote]", "[/quote:" . $row['bbcode_uid'] . "]", $row['post_text'] );
 		
 		$name='';
 		$name = substring_between($row['post_text'], '[quote=', ']');
 		if (name != '')
			$row['post_text'] = str_replace('[quote=' . $name . ']' , '[quote:' . $row['bbcode_uid'] . '="' . $name . '"]', $row['post_text'] );
		
		$sql = 'UPDATE `' . $table_prefix . 'posts_text` SET `post_text`=\'' . $row['post_text'] . '\' WHERE `post_id` = ' . $row['post_id'] . ';';
		$db->sql_query($sql);
	}
	
	echo 'Alle Datenbankoperationen erfolgreich durchgeführt!';
	
	
	//function to get a substring between between two other substrings

function substring_between($haystack,$start,$end) {
   if (strpos($haystack,$start) === false || strpos($haystack,$end) === false) {
       return false;
   } else {
       $start_position = strpos($haystack,$start)+strlen($start);
       $end_position = 0;
       while ($end_position < $start_position)
		  $end_position = strpos($haystack,$end);
       return substr($haystack,$start_position,$end_position-$start_position);
   }
}
	
?>
diese datei in abspeichern, (zb als phpDbUpdate.php ) und dann ins rootverzeichnis des forums legen und ausführen.

danach sollte alles wieder gehen.

mfg
studentl
Petra20
Mitglied
Beiträge: 247
Registriert: 15.01.2005 13:49
Wohnort: Wien

Beitrag von Petra20 »

danke fürs posten, es tut sich aber nichts.

habe kein update gemacht, ledeglich den nur 50 zeichen mod in die functions.php eingebaut, habe auch versucht das rückgängig zu machen hilft aber nichts.

die folgende lösung die vielen geholfen hat bringt mir auch nichts: OPEN: includes/functions_post.php

FIND

Code:
$message = addslashes($message);


AFTER ADD

Code:
$message = str_replace('"', '\\"', $message);

-------------------------
meine functions_post.php
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Also an der functions_post.php liegt es nicht.
Es wird eher an der bbcode.php und/oder der bbcode.tpl liegen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
studentl
Mitglied
Beiträge: 16
Registriert: 04.10.2006 17:50

Beitrag von studentl »

ihr müsst bevor ihr mein kleines tool ausführt wieder die originaldateien einspielen (am besten nochmal neu ziehen)...wenn ihr das dann macht geht es wieder ;) versprochen ;)

ps: da fehlen keine slashes, sondern die uid bei qoute ;) mehr is das net ^^
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Da hast Du verdammt wahr, Student.
Es sollte nur noch geklärt werden, wieso die bbcode_uid nicht mit reingeschrieben wird.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Petra20
Mitglied
Beiträge: 247
Registriert: 15.01.2005 13:49
Wohnort: Wien

Beitrag von Petra20 »

studentl hat geschrieben:ihr müsst bevor ihr mein kleines tool ausführt wieder die originaldateien einspielen (am besten nochmal neu ziehen)...wenn ihr das dann macht geht es wieder ;) versprochen ;)

ps: da fehlen keine slashes, sondern die uid bei qoute ;) mehr is das net ^^
das bekomme ich angezeigt wenn ich es ausführe.

Warning: main(./config.php) [function.main]: failed to open stream: No such file or directory in /www/htdocs/w0063220/fanclub/phpupdate.php on line 11

Warning: main(./config.php) [function.main]: failed to open stream: No such file or directory in /www/htdocs/w0063220/fanclub/phpupdate.php on line 11

Warning: main() [function.include]: Failed opening './config.php' for inclusion (include_path='.:/usr/share/php:..') in /www/htdocs/w0063220/fanclub/phpupdate.php on line 11

Fatal error: Cannot instantiate non-existent class: sql_db in /www/htdocs/w0063220/fanclub/includes/db.php on line 60
studentl
Mitglied
Beiträge: 16
Registriert: 04.10.2006 17:50

Beitrag von studentl »

hast du das file im rootpath von deinem forum liegen?also da wo auch config.php und viewtopic.php und so weiter liegt?sieht mir irgendwie nicht so aus..
Petra20
Mitglied
Beiträge: 247
Registriert: 15.01.2005 13:49
Wohnort: Wien

Beitrag von Petra20 »

hab ich. aber die config hab ich wo anders versteckt.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Dann musst Du (natürlich)

Code: Alles auswählen

include($phpbb_root_path . "config." . $phpEx);
im Code entsprechend Deinen Vorgaben anpassen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Petra20
Mitglied
Beiträge: 247
Registriert: 15.01.2005 13:49
Wohnort: Wien

Beitrag von Petra20 »

was schreib ich in die zeile wenn sich die config im haupt rooth aufhällt, also ein ordner vor dem forum.

... ps habe den script aber wo anders getestet, hätte nie gedacht das er funkt aber klappt wunderbar, danke das du dir so viel zeit genommen hat studentl um ih zu schreiben
Antworten

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