Seite 1 von 2

Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 20:03
von olle
Hallo,

ich habe ein etwas augefallenes Problem:
Ein Mitglied meines Forums hat etliche wissenschaftliche Beiträge in MS Word verfasst und die dort verfügbaren Sonderzeichen benutzt.
Eine Formulierung sieht z.B. so aus (ich hoffe, dass sie hier richtig dargestellt wird):

Code: Alles auswählen

U[θ] A(x) U[-θ] = exp[-iθª(x)tª] [Aª(x)tª – i/g exp[+iθª(x)tª] d exp[-iθª(x)tª] ] exp[+iθª(x)tª]
U[θ] E(x) U[-θ] = exp[-iθª(x)tª] [Aª(x)t] exp[+iθª(x)tª]
U[θ] Ψ (x) U[-θ] = exp[-iθª(x)tª] Ψ(x)
Er hat also seine Scripte einfach in die Zwischenablage kopiert und dann ins Forum eingefügt. Das hat auch funktioniert, alles wurde korrekt angezeigt. Word kodiert ja in ASCII, das Forum läuft auf UTF8, wobei ASCII ein Bestandteil von UTF8 ist.

Nun hat mein Provider eine Umstellung am Server vorgenommen. Vorher wurden alle Seiten vom Server mit ISO.8859-1 kodiert, jetzt soll das entsprechende Programm das Charset vorgeben. Leider sind jetzt alle Beiträge so zerstört, dass die Sonderzeichen nur noch als Fragezeichen dargestellt werden.

Wenn ich versuche, z.B. obige Formeln in einem Beitrag zu posten, so funktioniert die Vorschau noch einwandfrei, d.h. alle Zeichen werden korrekt wiedergegeben.
Drücke ich jedoch auf Absenden, kommt folgende Fehlermeldung:

Code: Alles auswählen

SQL ERROR [ mysqli ]

Incorrect string value: '\xCE\xB8] A(...' for column 'post_text' at row 1 [1366]

SQL

INSERT INTO phpbb_posts (forum_id, poster_id, icon_id, poster_ip, post_time, post_approved, enable_bbcode, enable_smilies, enable_magic_url, enable_sig, post_username, post_subject, post_text, post_checksum, post_attachment, bbcode_bitfield, bbcode_uid, post_postcount, post_edit_locked, topic_id) VALUES (3, 2, 0, '89.60.198.203', 1245519966, 1, 1, 1, 1, 1, '', 'U[θ] A(x) U[-θ] = exp[-iθª(x)tª] [Aª(x)tª – i/g exp[+iθª(x)tª] d exp[-iθª(x)tª] ] exp[+iθª(x)tª]\nU[θ] E(x) U[-θ] = exp[-iθª(x)tª] [Aª(x)t] exp[+iθª(x)tª]\nU[θ] Ψ (x) U[-θ] = exp[-iθª(x)tª] Ψ(x)', 'cb1a6f5c35d5b6d2fcde73050114017c', 0, '', '1q5zsp9u', 1, 0, 4)

BACKTRACE

FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()

FILE: includes/functions_posting.php
LINE: 1918
CALL: dbal_mysqli->sql_query()

FILE: posting.php
LINE: 1024
CALL: submit_post()


Leider weiß mein Provider auch keinen Rat mehr, ich selber komme auch nicht weiter.
Hat jemand von Euch eine Idee, was man da machen könnte? Ich habe schon versucht, mittels Notepad++ in diverse andere Formate zu kodieren, was aber auch nicht funktioniert. Man könnte natürlich BBCodes für die Sonderzeichen erstellen, aber die Arbeit ist höchst umfangreich und alles von Hand zu ändern wäre reine Sklavenarbeit.

Ich würde mich sehr freuen, falls jemand eine Idee hat...

Beste Grüße
Olle

Re: Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 20:59
von dieweltist
In meinem Forum gehen diese Zeichen. Ich würde testweise das Forum mit einem anderen TB-Präfix in einem Testordner installieren. Und dann schauen, ob dieser Fehler dort auch auftritt.

Falls es geht, würde ich dann das TB-Präfix auf die alten DB-Tabellen ändern und wieder schauen, ob es geht. Dann weißt Du mehr.

Re: Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 21:45
von olle
Danke schon mal für die Antwort!

Was meinst Du mit TB- Präfix?

Ich habe auf dem gleichen Server ein Versuchsforum, in dem ich alles problemlos testen kann.
Weiß aber nicht genau, was Du meinst.

Gruß
Olle

Re: Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 21:52
von dieweltist
Wenn man ein Forum installiert, kann man hinter "Präfix der Tabellen in der Datenbank:" ein Präfix angeben. Es ist das Datenbank-Tabellen-Präfix. Oder man belässt es bei der Vorgabe _phpbb. Übrigens ändert man bei einem Forum das Präfix, indem man dieses in der Datei config.php ändert.

Re: Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 23:09
von 4seven
ändere mal bitte in der tabelle phpbb_posts

im feld post_text testweise die Sortierung auf utf8_bin

- danach alle board- und browser-caches leeren

Re: Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 23:10
von olle
Ja klar, das ist mir bekannt.
Allerdings glaube ich nicht, dass dies etwas an der Gesamtsituation ändern wird.
Dieser Präfix ändert doch nichts an der Kodierung. Ob ich nun phpbb_ oder schietegal_phpbb_ auswähle, das dürfte keinen Unterschied machen.

Allerdings betreue ich "nebenbei" noch ein anderes Forum, wohl auf demselben Server, aber mit einem anderen TB- Präfix. Werde das dort mal testen. Ich bin aber überzeugt, dass es nichts bringt.
Bin aber erst morgen wieder zurück...

Schönen Gruß
Olle

Re: Sonderzeichen aus Word einfügen

Verfasst: 20.06.2009 23:19
von dieweltist
Ich hatte nicht geschrieben, dass Du von Deinem (Problem-) Forum das DB-Präfix ändern sollst. Ich hatte auch nicht geschrieben, dass mein Vorschlag was bringen könnte, sondern nur, dass man dann mehr weiß. Nämlich ob der Fehler vom Server, von der Datenbank oder vom Dateisystem verursacht wird.

Re: Sonderzeichen aus Word einfügen

Verfasst: 21.06.2009 11:31
von olle
In der phpbb_post habe ich die Sortierung wie vorgeschlagen auf UTF8_bin umgestellt.
Hat leider nichts gebracht, ich bekomme die gleiche Fehlermeldung. Hatte auch alle Caches geleert.

Ich habe auch den Tabellenpräfix geändert - in der config.php - wenn ich die aber hochlade, geht das Forum nicht mehr. Ist auch logisch, denn der alte Präfix steht ja noch unverändert in der Datenbank. Im phpMyAdmin habe ich keine Möglichkeit gefunden, den Präfix umzustellen.

Ich habe aber in einem ganz anderen Forum, welches auf dem gleichen Server liegt, jedoch einen völlig anderen TB- Präfix verwendet, auch diese Sonderzeichen gepostet. Hier bekomme ich die gleiche Fehlermeldung.

Wenn ich das recht betrachte, liegt dann die Ursache wohl am Server?
Kann ich noch etwas versuchen? Mir fällt leider nichts mehr ein...

Viele Grüße
Olle

Re: Sonderzeichen aus Word einfügen

Verfasst: 21.06.2009 11:42
von dieweltist
Was verstehst Du unter einem völlig anderen Präfix? Den vom Testforum oder den von Deinem Hauptforum? Außerdem hat es natürlich keinen Sinn bei einem Forum einen Präfix von nichtexistierenden Datenbanktabellen anzugeben. Es scheint, als wenn du meinen Vorschlag nicht richtig verstanden hast. :(

Re: Sonderzeichen aus Word einfügen

Verfasst: 21.06.2009 11:46
von 4seven
evtl interessant:
http://www.phpbb.de/community/viewtopic ... 77&start=0
http://www.piranho.de/home/boards/showt ... 80&ppage=1

scheint wohl die lösung zu sein.
führe die datenbankbefehle angepasst für deine tabelle (präfix) aus