Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste
Merge System zeigt Fehler auf Requirements Check
#1
Hallo,

ich habe eine neues myBB Forum mit dem aktuelle Code erstellt und anschließend das Merge System mit letztem Code hochgeladen.

Wenn ich das nun laufen lasse erhalte ich bereits auf dem "Requirements Check" folgende Fehlermeldung:
   

Code:
Fatal error: Uncaught Error: Call to undefined function merge_fetch_remote_file() in /home/forge/newforum.stargate-project.de/merge/index.php:599 Stack trace: #0 {main} thrown in /home/forge/newforum.stargate-project.de/merge/index.php on line 599

Aktuell habe ich die Seite mit PHP 7.4 laufen, da 7.1, 8.0, 8.1 und 8.2 nur noch mehr Fehlermeldungen auf dem Merge System anzeigen.

Hat jemand eine Idee, wie ich mit dem Import weiterkomme?

Danke & LG
vorlon.tech
Zitieren
#2
Die Funktion "merge_fetch_remote_file" gibt es auf jeden Fall, daher kann ich mir den Fehler nicht so ganz erklären: https://github.com/mybb/merge-system/blo...s.php#L649

Bist du sicher, dass du alle Dateien es Merge-System vollständig hochgeladen hast?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#3
@stefanT danke for den schnellen Hinweis.
Aus irgendeinem Grund war die Datei mit den Funktionen "leer". Ich habs nochmal hochgeladen und dann zeigte das System unter PHP 7.4 keine Fehler mehr an.

Allerdings habe ich beim Import der User jetzt direkt wieder ein Problem:

Code:
MyBB has experienced an internal SQL error and cannot continue.
SQL Error:
1062 - Duplicate entry '' for key 'sgp_mybb_users.username'
Query:
INSERT INTO sgp_mybb_users (`usergroup`,`additionalgroups`,`displaygroup`,`import_usergroup`,`import_additionalgroups`,`import_displaygroup`,`import_uid`,`username`,`password`,`salt`,`loginkey`,`email`,`regdate`,`lastactive`,`lastvisit`,`website`,`showsigs`,`signature`,`showavatars`,`timezone`,`avatardimensions`,`avatartype`,`avatar`,`lastpost`,`icq`,`skype`,`google`,`hideemail`,`allownotices`,`regip`,`lastip`,`language`,`passwordconvert`,`passwordconverttype`,`postnum`,`invisible`,`birthday`,`birthdayprivacy`,`subscriptionmethod`,`receivepms`,`receivefrombuddy`,`pmnotice`,`pmnotify`,`showquickreply`,`ppp`,`tpp`,`daysprune`,`timeformat`,`dst`,`buddylist`,`ignorelist`,`style`,`away`,`awaydate`,`returndate`,`referrer`,`referrals`,`reputation`,`timeonline`,`showcodebuttons`,`totalpms`,`unreadpms`,`pmfolders`,`notepad`,`threadmode`,`showredirect`,`dateformat`,`dstcorrection`,`warningpoints`,`moderateposts`,`moderationtime`,`suspendposting`,`suspensiontime`,`suspendsignature`,`suspendsigtime`,`coppauser`,`classicpostbit`,`loginattempts`,`usernotes`,`showimages`,`showvideos`,`passwordconvertsalt`) VALUES (0,'',0,0,'',0,0,'','','','','cacuzo90@web.de',0,0,0,'',1,'',1,'','','','',0,'','','',1,1,X'3ee0d65f',X'','','0d4e40138e6f70201c9e86af2224d30c','vb4',0,0,'','all',2,1,0,1,1,1,0,0,0,'',0,'','',0,0,0,'',0,0,0,0,1,0,0,'0**$%%$1**$%%$2**$%%$3**$%%$4**','','',1,'',1,0,0,0,0,0,0,0,0,0,0,'',1,1,'9,s-*66%#\'bKQrJhDFWX=|~|r0SG&J')

Irgendwie wird der Username nicht übernommen.

Hat jemand dazu eine Idee?
Danke!
Zitieren
#4
Anscheinend gibt es mindestenes ein Mitglied, das keinen "Username" hat - d.h. der Username ist leer.
Und spätestens beim Import des zweiten Mitglieds ohne Username wirft die Datenbank diesen Fehler heraus, da das Tabellenfeld 'username' nicht leer sein darf.

An dieser Stelle würde ich die Tabelle des alten Forums mit der MyBB-Tabelle sgp_mybb_users vergleichen.
(Es werden wahrscheinlich schon viele Mitglider bis zu diesem Fehler importiert worde sein.)
Gibt es bis hierhin schon ein Mitglied ohne 'username'?

(1) Wir wissen nicht, was dein Urspunrgsforum ist und wie dein Datenbankschema aussieht.
Finde heraus, ob es identische oder fehlende 'Username' gibt.
SQL:
SELECT COUNT(*) FROM [Usprungsforum.users];
SELECT UNIQUE [username] FROM [Usprungsforum.[users]];
Wenn die Anzahl der Datensätze unterschiedlich ist, gibt es Handlungsbedarf - manuell.

Finde heraus, ob es Mitglieder ohne Benutzernamen gibt.
SQL:
SELECT [username] FROM [Urpsungsforum.[users]] WHERE [username] = '';

Die Tabellennamen und Felder des Ursprungsforums musst du entsprechend ersetzen, weil (1).

[ETS]
NokiaPort.de Forum Nokia-Traditionsforum seit 2006. (MyBB + innovatives Theme)
Wusstest-Du.de - täglich wissen!
Unlösbares Problem, Dilemma? -> das Nötel (-:
Zitieren
#5
Der erste Datensatz des alten Forums wird mit einem leeren Username übernommen.
Beim zweiten Datensatz des alten Forums ist der Username wieder leer und dann kommt dieser Fehler.

Im SQL Statement sieht man ja das der Username leer ist. Das passiert von Anfang an.

Das Problem scheint in dieser Funktion zu liegen:
Code:
$insert_data['username'] = encode_to_utf8($data['username'], "user", "users");
Zitieren
#6
leider wissen wir immer noch nicht, von welcher Forensoftware aus du versuchst den Merge zu machen
Könnte bei der Recherche durchaus nützlich sein

eventuell wurde das Problem sogar schon gelöst.
Schau mal ob die Github-Version von Sama/Omar funktioniert: https://github.com/Sama34/merge-system

Das Problem mit dem leeren Usernamen und der Fehlermeldung hatten wir schon einmal, allerdings hatte die Userin es sehr unkonventionell gelöst und ob es der gleiche Merge-Prozess war, wissen wir ja auch nicht
Kein Support per PN, Mail, Telefon, Hausbesuch, Discord, Telegram, WhatsApp und anderen nutzlosen Tools
Zitieren
#7
Oh sorry: ich versuche von einem VBulletinV4 Forum aus zu importieren
Zitieren
#8
hast du mal die fork-version von Omar (Sama) probiert?
Kein Support per PN, Mail, Telefon, Hausbesuch, Discord, Telegram, WhatsApp und anderen nutzlosen Tools
Zitieren
#9
Ja, habe ich heute ausprobiert. Hier passiert genau dasselbe.

Ich habe jetzt mal den Usernamen nach dem rausholen aus der VBulletinV4 Datenbank und nach der Umwandlung im Script gedumpt und hier scheint das problem zu liegen:

Aus VBulletin Datenbank:
Code:
string(7) "Ancient" bool(false)

Nach Umwandlung mit "encode_to_utf8($data['username'], "user", "users");"
Code:
string(19) "_vbulletin4_import2" bool(false)

In der "encode_to_utf8" Funktion habe ich mal die beiden encodings gedumpt:
Code:
var_dump($import_session['table_charset_old'][$old_table_name]);
string(6) "latin1"

var_dump($import_session['table_charset_new'][$new_table_name]);
string(7) "utf8mb3"

Vielleicht hilft das jemandem auf die Sprünge. Danke!
Zitieren
#10
Das Problem scheint offensichtlich an der UTF8-Konvertierung zu liegen.
Was passiert, wenn du die Datei .\merge\boards\vbulletin4\users.php folgendermaßen bearbeitest?

Von:
$insert_data['username'] = encode_to_utf8($data['username'], "user", "users");
Zu:
$insert_data['username'] = $data['username'];

Eliminiere diese Konvertierung und lasse MyBB einfach den Original-Mitgliedsnamen importieren.
UTF8 hat einen größeren Zeichensatz und kann die Latin1-Kollation (ISO-8859-1, 256 Zeichen) komplett abdecken; da braucht nichts konvertiert zu werden. Wenn die MyBB-Ziel-Tabelle bereits in UTF8 vorliegt, wird auch jeder Plaintext-String (Username) aus der alten Tabelle in der entsprechenden Kollation in UTF8 in die Tabelle geschrieben.

Falls du auf eine Konvertierung bestehen solltest...
"encode_to_utf8()" ist eine eigene MyBB-Funktion.
Wenn du eine 'unabhängige' Konvertierung vornehmen möchtest, kannst du diese Funktion ebenso durch die native PHP-Funktion "utf8_encode()" ersetzen. Die verwandelt ISO-8859-1 (Latin1) in UTF8, womöglich ohne Probleme.

[ETS]
NokiaPort.de Forum Nokia-Traditionsforum seit 2006. (MyBB + innovatives Theme)
Wusstest-Du.de - täglich wissen!
Unlösbares Problem, Dilemma? -> das Nötel (-:
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
Question Merge System viele Anhänge bachi 2 946 30.10.2024, 17:31
Letzter Beitrag: StefanT
  Merge System noobfreundlich ? tomauswustrow 3 1.112 15.03.2024, 22:25
Letzter Beitrag: ReStro
  Merge-System-Fehlermeldung FlederMaus 15 3.719 30.11.2023, 18:16
Letzter Beitrag: ReStro
  Merge System ReStro 2 1.256 28.11.2023, 18:26
Letzter Beitrag: ReStro
  Merge System funktioniert nicht EckertS 3 966 25.08.2023, 11:41
Letzter Beitrag: Gerti