Umlaute werden "verschluckt"

phpBB 3.0 hat sein "End of Life" erreicht. Eine Neu-Installation wird nicht mehr unterstützt.
Astro-Van
Mitglied
Beiträge: 22
Registriert: 06.09.2007 11:50

Re: Umlaute werden "verschluckt"

Beitrag von Astro-Van »

Hi,

hier die config.php des original Forums :

Code: Alles auswählen

<?php
// phpBB 3.0.x auto-generated configuration file
// Do not change anything in this file!
$dbms = 'mysql';
$dbhost = '';
$dbport = '';
$dbname = 'Name der DB';
$dbuser = 'DB-User';
$dbpasswd = 'PW';
$table_prefix = 'phpbb_';
$acm_type = 'file';
$load_extensions = '';

@define('PHPBB_INSTALLED', true);
@define('DEBUG', true);
@define('DEBUG_EXTRA', true);
?>
und die config.php der Kopie des Forums :

Code: Alles auswählen

<?php
// phpBB 3.0.x auto-generated configuration file
// Do not change anything in this file!
$dbms = 'mysqli';
$dbhost = '';
$dbport = '';
$dbname = 'Name der DB';
$dbuser = 'DB-User';
$dbpasswd = 'PW';
$table_prefix = 'phpbb_';
$acm_type = 'file';
$load_extensions = '';

@define('PHPBB_INSTALLED', true);
// @define('DEBUG', true);
// @define('DEBUG_EXTRA', true);
?>
Wobei ich es auch schon mit dem "i" versucht hatte, leider auch ohne Erfolg.

BTW : Ich benutze Version 1.23 pr REV257 von MySQLDumper.

Thx, für Deine Mühe.
Grüße Jens
Benutzeravatar
oxpus
Ehemaliges Teammitglied
Beiträge: 5394
Registriert: 03.02.2003 12:33
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Umlaute werden "verschluckt"

Beitrag von oxpus »

Sorry, aber hier muss ich passen. Ich habe keine Idee, was hier noch falsch sein könnte...
Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Umlaute werden "verschluckt"

Beitrag von coolsoft »

Ich hab so ne ungefähre Ahnung (Verdacht).
Bei der Installataion auf eine Version < 4.1.23 (Deie war 4.1.1) wird das SET Names Statement von phpbb3 nicht gesetzt / verwendet, das die Verbindung zur DB auf UTF8 setzt.
Stattdessen wird die Installation für MYSL 4.0 verwendet, das dieses Statement noch nicht kennt.
Heisst: erster Versuch: in der config.php $dbms auf mysql4 setzen.
(und mal wieder cache leeren anschliessend)
Das nächste wäre hier oder auf phpbb.com nach dem Suchbegriff 'SET NAMES' sicuhen - ich hab das Thema schon mal wo gelesen.
Die allerletzte Möglichkeit wäre, den letzten Dump unter Version 4.1 mal lokal in eine DB einpielen, die auf latin1 codiert ist und als utf8 wieder zu exportieren.
(hat aber mit den jüngeren Mysqldumper Versionen ein Problem, weil die Codierung bereits im Dump steht unbd automatisch gesetzt wird)
Wäre was, für einen, der das schon ein paar mal gemacht hat)
Tante Editha:
wenn Du keine Mods drinnen hast könnte man auf dem neuen MSQL5 phpBB3 neu installieren und anschliessend einfach auf die andere DB umschalten.
Astro-Van
Mitglied
Beiträge: 22
Registriert: 06.09.2007 11:50

Re: Umlaute werden "verschluckt"

Beitrag von Astro-Van »

Hi,

das mit dem mysql4 bewirkte (nach Cache leeren) auch nur das dann alles weiß war.

Die Suche nach 'SET NAMES' brachte mir bei phpbb.com zu einer Lösung :
http://www.phpbb.com/community/viewtopi ... &t=1551205

bin mir da nur sehr unsicher, da der Verfasser von eine "zweifelhaften" bzw. rohe Lösung spricht.

Leider sind im original Forum einige (ca. 5-7 ) MOD´s "verbaut", wovon leider einige nicht Mysql5-kompatibel sind :cry: :cry: :cry: :cry:

Edit :
ich habe mal versucht die BD zu updaten (nicht ohne vorher ein Backup zumachen :o ), dann kam folgendes :

Code: Alles auswählen

Die Datenbank wird auf die neueste Version aktualisiert

Datenbanktyp :: mysql4
Vorherige Version :: 3.0.1
Aktualisierte Version :: 3.0.4


Datenbankstruktur wird aktualisiert

Fortschritt ::
ALTER TABLE `phpbb_drafts` CHANGE `draft_subject` `draft_subject` varchar(255) DEFAULT '' NOT NULL
.
ALTER TABLE `phpbb_forums` CHANGE `forum_last_post_subject` `forum_last_post_subject` varchar(255) DEFAULT '' NOT NULL
.
ALTER TABLE `phpbb_posts` CHANGE `post_subject` `post_subject` varchar(255) DEFAULT '' NOT NULL COLLATE utf8_unicode_ci
.
ALTER TABLE `phpbb_privmsgs` CHANGE `message_subject` `message_subject` varchar(255) DEFAULT '' NOT NULL
.
ALTER TABLE `phpbb_topics` CHANGE `topic_title` `topic_title` varchar(255) DEFAULT '' NOT NULL COLLATE utf8_unicode_ci
.
ALTER TABLE `phpbb_topics` CHANGE `topic_last_post_subject` `topic_last_post_subject` varchar(255) DEFAULT '' NOT NULL
.
DROP INDEX session_forum_id ON phpbb_sessions
.
CREATE INDEX session_fid ON phpbb_sessions(session_forum_id)
.
ALTER TABLE `phpbb_styles` CHANGE `style_id` `style_id` mediumint(8) UNSIGNED NOT NULL auto_increment
.
ALTER TABLE `phpbb_styles` CHANGE `template_id` `template_id` mediumint(8) UNSIGNED DEFAULT '0' NOT NULL
.
ALTER TABLE `phpbb_styles` CHANGE `theme_id` `theme_id` mediumint(8) UNSIGNED DEFAULT '0' NOT NULL
.
ALTER TABLE `phpbb_styles` CHANGE `imageset_id` `imageset_id` mediumint(8) UNSIGNED DEFAULT '0' NOT NULL
.
ALTER TABLE `phpbb_styles_imageset` CHANGE `imageset_id` `imageset_id` mediumint(8) UNSIGNED NOT NULL auto_increment
.
ALTER TABLE `phpbb_styles_imageset_data` CHANGE `image_id` `image_id` mediumint(8) UNSIGNED NOT NULL auto_increment
.
ALTER TABLE `phpbb_styles_imageset_data` CHANGE `imageset_id` `imageset_id` mediumint(8) UNSIGNED DEFAULT '0' NOT NULL
.
ALTER TABLE `phpbb_styles_theme` CHANGE `theme_id` `theme_id` mediumint(8) UNSIGNED NOT NULL auto_increment
.
ALTER TABLE `phpbb_styles_template` CHANGE `template_id` `template_id` mediumint(8) UNSIGNED NOT NULL auto_increment
.
ALTER TABLE `phpbb_styles_template_data` CHANGE `template_id` `template_id` mediumint(8) UNSIGNED DEFAULT '0' NOT NULL
.
ALTER TABLE `phpbb_forums` CHANGE `forum_style` `forum_style` smallint(4) UNSIGNED DEFAULT '0' NOT NULL
.
ALTER TABLE `phpbb_users` CHANGE `user_style` `user_style` mediumint(8) UNSIGNED DEFAULT '0' NOT NULL
. Erledigt
Ergebnis :: Einige Abfragen sind gescheitert. Die Abfragen und die zugehörigen Fehler sind weiter unten aufgeführt.

    * Fehler :: INDEX command denied to user 'web319'@'localhost' for table 'phpbb_sessions'
      SQL :: DROP INDEX session_forum_id ON phpbb_sessions

    * Fehler :: INDEX command denied to user 'web319'@'localhost' for table 'phpbb_sessions'
      SQL :: CREATE INDEX session_fid ON phpbb_sessions(session_forum_id)



Dies ist in der Regel nicht kritisch, die Aktualisierung wird fortgeführt. Sollte deren Fertigstellung scheitern, musst du möglicherweise Hilfe in unserem Supportforum in Anspruch nehmen. Details, wie und wo du Hilfe bekommst, kannst du der README-Datei entnehmen.

Daten werden aktualisiert

Fortschritt ::
UPDATE phpbb_groups SET group_max_recipients = 5 WHERE group_name IN ('GUESTS', 'REGISTERED', 'REGISTERED_COPPA', 'BOTS')
.
UPDATE phpbb_modules SET module_auth = 'acl_a_email && cfg_email_enable' WHERE module_class = 'acp' AND module_basename = 'email'
.
UPDATE phpbb_log SET log_operation = 'LOG_DELETE_TOPIC' WHERE log_operation = 'LOG_TOPIC_DELETED'
.
SELECT field_id, field_required, field_show_on_reg, field_hide FROM phpbb_profile_fields
.
UPDATE phpbb_profile_fields SET field_required = 0, field_show_on_reg = 1, field_hide = 0, field_show_profile = 1 WHERE field_id = 1
.
UPDATE phpbb_profile_fields SET field_required = 0, field_show_on_reg = 1, field_hide = 0, field_show_profile = 1 WHERE field_id = 2
. Erledigt
Ergebnis :: Keine Fehler


Version wird aktualisiert und Tabellen optimiert

Fortschritt ::
UPDATE phpbb_config SET config_value = '3.0.4' WHERE config_name = 'version'
.
UPDATE phpbb_users SET user_permissions = '', user_perm_from = 0
. Erledigt
Ergebnis :: Keine Fehler

Update abgeschlossen

Bitte stelle sicher, dass du auch die Dateien des Boards aktualisiert hast. Diese Datei aktualisiert nur die Datenbank.
Grüße Jens
Zuletzt geändert von Astro-Van am 06.05.2009 11:21, insgesamt 1-mal geändert.
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Umlaute werden "verschluckt"

Beitrag von coolsoft »

ach, sicher das file und versuchs - hebt eigenlich genau auf das Problem ab, das ich vermute.
auf alle Fälle sitzt der Ansatz an der Quelle der möglichen Ursache.
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Umlaute werden "verschluckt"

Beitrag von coolsoft »

Leider sind im original Forum einige (ca. 5-7 ) MOD´s "verbaut", wovon leider einige nicht Mysql5-kompatibel sind
Kann ich mir bei bb3 Mods eigentlich nicht vorstellen?
Astro-Van
Mitglied
Beiträge: 22
Registriert: 06.09.2007 11:50

Re: Umlaute werden "verschluckt"

Beitrag von Astro-Van »

Hi,

leider kapier ich nicht wo in der mysql.php dieser Code eingefügt/welcher ersetzt werden soll.

Grüße Jens
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Umlaute werden "verschluckt"

Beitrag von coolsoft »

/includes/db/mysql.php:

Code: Alles auswählen

				if (version_compare($this->sql_server_info(true), '4.1.3', '>='))
				{
					@mysql_query("SET NAMES 'utf8'", $this->db_connect_id);
ersetze mit

Code: Alles auswählen

				if (version_compare($this->sql_server_info(true), '4.1.3', '>='))
				{
				// 	@mysql_query("SET NAMES 'utf8'", $this->db_connect_id);
Achte auf einen erwachsenen editor und daß Du das File als Typ utf8 ohne BOM abspeicherst.
Astro-Van
Mitglied
Beiträge: 22
Registriert: 06.09.2007 11:50

Re: Umlaute werden "verschluckt"

Beitrag von Astro-Van »

Hi,

das hatte ich schon probiert, Ergebnis : alles weiß, allein schon beim Aufruf des Forums.

Ich meinte :

Code: Alles auswählen

 @mysql_query("SET NAMES 'latin1'");
         $result = $db->sql_query($sql);
      @mysql_query("SET NAMES 'utf8'"); 
wo kommt das hin ?

thx

Grüße Jens
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Umlaute werden "verschluckt"

Beitrag von coolsoft »

na dann hier in die Zeile (ersetze utf8 mit latin1)

Code: Alles auswählen

@mysql_query("SET NAMES 'utf8'", $this->db_connect_id);
Gesperrt

Zurück zu „[3.0.x] Installation, Update und Konvertierung“