Kollation umstellen

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Kollation umstellen

Beitrag von volker58 »

hallo,

wie kann ich in der db die kollation von latin1_swedish_ci auf latin1_german2_ci für alle tabellen umstellen? folgender hintergrund, wenn ich in einem dim-forum 2 themen zusammenführen will, kommt diese fehlermeldung
Could not obtain topic information

DEBUG MODE

SQL Error : 1054 Unknown column 'f1' in 'where clause'

SELECT t.*, u.username, u.user_id, p.post_time FROM phpbb_topics t, phpbb_users u, phpbb_posts p WHERE t.forum_id = f1 AND t.topic_poster = u.user_id AND p.post_id = t.topic_last_post_id AND t.topic_moved_id = 0 AND t.topic_id NOT IN (7) ORDER BY t.topic_type DESC, p.post_time DESC LIMIT 0, 50

Line : 790
File : modcp.php
ich habe auf meinem homeserver wo es beim supportforum geht, die db von dem forum genommen wo es nicht geht und festgestellt, das es mit dieser db nicht geht, also sind die dateien okay. der einzige unterschied, den ich festgestellt habe, ist das mit der kollation. ist da mein gedankengang richtig oder habe ich es blöd erklärt :eek:
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

t.forum_id = f1
Da fehlen wohl entweder Hochkommas (einfache) oder das "f" ist zu viel.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

hier ist der bereich

Code: Alles auswählen

$sql = "SELECT t.*, u.username, u.user_id, p.post_time
            FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p
            WHERE t.forum_id =  ' . $new_forum_id
               AND t.topic_poster = u.user_id
               AND p.post_id = t.topic_last_post_id
               AND t.topic_moved_id = 0
               AND t.topic_id NOT IN ($topic_list)
            ORDER BY t.topic_type DESC, p.post_time DESC
            LIMIT $start, " . $board_config['topics_per_page'];
         if ( !($result = $db->sql_query($sql)) ) {
            message_die(GENERAL_ERROR, 'Could not obtain topic information', '', __LINE__, __FILE__, $sql);
         }
aber wie schon geschrieben, in vielen anderen foren mit gleichen dateien geht es :(
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Tja und was steht nun hinter $new_forum_id?
Das weiß ich ja jetzt auch nicht.
"f1" ist jedenfalls keine Foren-ID, sondern ein Schlüssel für die Subforenverwaltung, nur eben hier noch nicht aufgelöst.
Also muss etwas kaputt sein, denn an dieser Stelle ist nur eine reine Zahl erlaubt.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

hast du noch local die dim laufen? da ist die datei mit drin, ohne änderung. auf manchen servern geht es und auf einem nicht, das macht mich so verückt
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Häng dann doch mal den Quelltext des Forms hier an, in dem das DropDown für das Zielforum ausgewählt wird.
Ich kann Dein Problem wirlich nicht nachvollziehen, da bei mir überall nur Zahlen und keine alphanumerischen Foren-Angaben enthalten sind.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Okay, versuchter Workaround:

Code: Alles auswählen

#
#-----[ OPEN ]-----
#
modcp.php

#
#-----[ FIND ]-----
#
      $page_title = $lang['Mod_CP'];
      include($phpbb_root_path . 'includes/page_header.'.$phpEx);

      $merge2 = ( isset($HTTP_POST_VARS['merge2']) ) ? TRUE : FALSE;

      // this starts after you selected the forum to which the topic will be moved/merged
       if ( $merge2 ){

      $new_forum_id = $HTTP_POST_VARS['new_forum'];

#
#-----[ AFTER, ADD ]-----
#
	  if (intval($new_forum_id{0}) == 0)
	  {
	  	$new_forum_id = intval(substr($new_forum_id,1));
	  }

#
#-----[ FIND ]-----
#
         $topic_id_to = $HTTP_POST_VARS['topic_id_to'];
         $new_forum_id = $HTTP_POST_VARS['new_forum'];
         $old_forum_id = $forum_id;

#
#-----[ AFTER, ADD ]-----
#
         if (intval($new_forum_id{0}) == 0)
         {
   		     $new_forum_id = intval(substr($new_forum_id,1));
         }
Zuletzt geändert von oxpus am Sa 27.Sep, 2008 20:25, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

leider nicht :(
Could not obtain topic information

DEBUG MODE

SQL Error : 1054 Unknown column 'f26' in 'where clause'

SELECT t.*, u.username, u.user_id, p.post_time FROM phpbb_topics t, phpbb_users u, phpbb_posts p WHERE t.forum_id = f26 AND t.topic_poster = u.user_id AND p.post_id = t.topic_last_post_id AND t.topic_moved_id = 0 AND t.topic_id NOT IN (624) ORDER BY t.topic_type DESC, p.post_time DESC LIMIT 0, 75

Line : 794
File : modcp.php
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Doch, geht, nur hatte ich die Bedingungen falsch.
Bitte ersetzen, dann sollte der Fehler wirklich weg sein.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

moing,

über das "Moderator Control Pane" geht das nun, danke :)

wenn ich unter den beiträgen gleich auf zusammenfügen gehe, also bei"Beiträge in ein anderes Thema einfügen", bekomme ich nach dem absenden diese meldung
Could not obtain topic information

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND t.topic_poster = u.user_id AND p.post_id = t.topic_last_post' at line 4

SELECT t.*, u.username, u.user_id, p.post_time FROM phpbb_topics t, phpbb_users u, phpbb_posts p WHERE t.forum_id = AND t.topic_poster = u.user_id AND p.post_id = t.topic_last_post_id AND t.topic_moved_id = 0 AND t.topic_id != 380 ORDER BY t.topic_type DESC, p.post_time DESC LIMIT 0, 75

Line : 1175
File : modcp.php
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Code: Alles auswählen

#
#-----[ FIND ]-----
#
         $template->set_filenames(array(
            'body' => 'modcp_merge_topicpost.tpl')
         );

         //
         // Define censored word matches
         //
         $orig_word = array();
         $replacement_word = array();
         obtain_word_list($orig_word, $replacement_word);
 
#
#-----[ AFTER, ADD ]-----
#
		  if (intval($new_forum_id{0}) == 0)
		  {
		  	$new_forum_id = intval(substr($new_forum_id,1));
		  }

#
#-----[ FIND ]-----
#
               'S_FORUM_SELECT' => selectbox('new_forum', $forum_id))

#
#-----[ AFTER, ADD ]-----
#
               'S_FORUM_SELECT' => selectbox('new_forum_id', $forum_id))
So insgesamt gesehen muss ich hier nun feststellen, daß der Einbau des Categorie Hierarchy MOD nun alles andere als sauber von statten ging, gerade in der modcp.php.
Denn im Original dieses MODs ist deutlich mehr Code zu finden, der die Foren-IDs eindeutig und fehlerfrei behandelt.
So wirklich Lust habe ich daher keine, hier Workaround um Workaround zu erstellen, wenn der MOD Einbau bereits fehlerhaft ist!!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

die änderungen für den mod hatte ich von hier http://www.phpbb.de/viewtopic.php?p=739593#739593

der fehler kommt noch, mußte es aber so einbauen

Code: Alles auswählen

'S_FORUM_SELECT' => selectbox('new_forum', $forum_id),
'S_FORUM_SELECT' => selectbox('new_forum_id', $forum_id))
Could not obtain topic information

DEBUG MODE

SQL Error : 1054 Unknown column 'f24' in 'where clause'

SELECT t.*, u.username, u.user_id, p.post_time FROM phpbb_topics t, phpbb_users u, phpbb_posts p WHERE t.forum_id = f24 AND t.topic_poster = u.user_id AND p.post_id = t.topic_last_post_id AND t.topic_moved_id = 0 AND t.topic_id != 380 ORDER BY t.topic_type DESC, p.post_time DESC LIMIT 0, 75

Line : 1179
File : modcp.php
Zuletzt geändert von volker58 am So 28.Sep, 2008 15:02, insgesamt 2-mal geändert.
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Schön, aber wo ist z. B. dieser Teil hier:

Code: Alles auswählen

            $fid = $HTTP_POST_VARS['new_forum_id'];
            if ($fid == 'Root')
            {
               $type = POST_CAT_URL;
               $new_forum_id = 0;
            }
            else
            {
               $type = substr($fid, 0, 1);
               $new_forum_id = ($type == POST_FORUM_URL) ? intval(substr($fid, 1)) : 0;
            }
            if ($new_forum_id <= 0 ) message_die(GENERAL_MESSAGE, $lang['Forum_not_exist']);
;)
Der steht nämlich auch dort im Code drinnen, feht aber in der modcp.php des dimension!!!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

warum auch immer das gefehlt hat, nun geht es, danke :)
Gruss Volker

http://www.fuchsienfreunde.de
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Das ist aber nicht die einzigste Stelle, die aus dem CH MOD in der modcp.php nicht zu finden ist. Daher musste ich ja nun auch schon die Workarounds in diesem Topic erstellen, die allesamt mit korrektem Einbau der MOD überflüssig gewesen wären ;)
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
volker58
Beiträge: 724
Registriert: Mo 27.Dez, 2004 19:22
Wohnort: Annaberg-Buchholz
Kontaktdaten:

Beitrag von volker58 »

ich habe mir da auch nie gedanken gemacht, in vielen foren geht es ja, nur einer hatte mich angeschrieben das es nicht geht. er macht auch keine änderungen in seinem forum, ich habe da nur den ftp-zugang. nun hatte ich testweise meine db vom supportforum da eingespielt und es ging auch. danach seine wieder rein und ging nicht. darum hatte ich niemals an veränderungen in der datei gedacht.
Gruss Volker

http://www.fuchsienfreunde.de
Antworten