Statistik |
Beiträge: 144.534 (Täglich: 19,19 )
Themen: 16.701
Mitglieder: 13.209
Neuestes Mitglied: zitronentee.
Ausl. d. letzten Minute: 128%
Ausl. d. letzten 5 Minuten: 145%
Ausl. d. letzten 15 Minuten: 194%
Aktulle Uhrzeit: 09:42
Freier Webspace: 4.04 TB
PHP-Version: 7.4.33
|
|
|
|
|
Das lästige UMLAUTE Thema |
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
|
|
Das lästige UMLAUTE Thema |
|
Folgenes Problem ...
Wenn ich ein nutzer anlege mit dem namen
Beispiel: Martin Müller
Wird alles gespeichert , außer der username das feld bleibt leer. (Nicht wenn ich keine Umlaute benutze)
Tabellen und Spalten sind in utf8_general_ci
die htm und Tpl mit
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
versehen ... UTF-8 hab ich getestet (keine änderung)
Hat jemand eine Idee ?
__________________
|
|
21.08.2021 13:52 |
|
|
|
Hallo,
Sehr wahrscheinlich verwendest du auch eine Datenbankverbindung als "UTF-8"?
Somit hast du auch ein Problem, wenn du deine Seite als "ISO 8859-1" anzeigst und Formulardaten in diesem Typ absendest ohne vorher eine Konvertierung durchzuführen, da das System nicht automatisch weiß, welche Zeichenkodierung verwendet wird.
In deinem Falle erwartet das System wohl eine "UTF-8" Kodierung, aber das Formular, oder eine Mittelstelle dazwischen sendet die Daten als "ISO 8859-1" wodurch Daten mit Umlauten für "UTF-8" invalid werden.
Da standardmäßig Formulardaten durch die Funktion "htmlspecialchars", im WoltLab Burning Board Lite, verändert werden und diese den Standardwert "UTF-8" haben wird, wird das gesamte Ergebnis verworfen, sofern ein ungültiges "UTF-8" kodiertes Zeichen auftritt, und die Daten landen als "leerer Datensatz" in der Datenbank.
Mittels einer PHP-Datei mit folgenden Inhalt könntest du erstmal feststellen, welcher HTTP-Header verwendet wird("default_charset"):
Eine eventuelle Lösung könnte dies sein:
Globale Einstellungen
__________________
|
|
21.08.2021 16:31 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
Danke für die antwort und habe auch gleich mal geschaut
Das Ergebnis siehste im Bild
Ergänzung es ist nur beim feld username bei den anderen feldern geht ÄÖÜ
EDIT :
Ich habe in der user.php was geändet und nun geht.
Vorher
code: |
1:
|
VALUES (NULL,'".addslashes(htmlspecialchars($username))."','".md5($password)."','".addslashes(htmlspecialchars($email))."' |
|
jetzt
code: |
1:
|
VALUES (NULL,'".addslashes(addslashes($username))."','".md5($password)."','".addslashes(htmlspecialchars($email))."' |
|
der tip mit der Übermittlung war es... ^^
Danke
Dateianhang: |
5555.png (2,24 KB, 95 mal heruntergeladen)
|
__________________
|
|
21.08.2021 17:28 |
|
|
|
Hallo,
Die Ersetzung von "htmlspecialchars" mit "addslashes" ist aber bei weitem keine äquivalente Ersetzung und ist in deinem Falle nun ein doppeltes "addslashes"...
Welche PHP-Version hast du denn?
"no value" als "default_charset" ist eher ungewöhnlich bei PHP-Versionen ab 5.6.
Vielleicht sollte der Wert mal gesetzt werden
__________________
|
|
21.08.2021 17:57 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
wie setze ich den wert eines gemieteten servers ?
ich hab wbb auf 7.0 laufen .
__________________
|
|
21.08.2021 18:53 |
|
|
|
Hallo,
Kommt auf deinen Zugriff an.
Wenn du die "php.ini" bearbeiten kannst, dann über jene.
Andernfalls über ein PHP-Skript, wie es beispielsweise mein geposteter Link macht.
__________________
|
|
21.08.2021 19:14 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
|
Zitat: Original von knudd
Danke für die antwort und habe auch gleich mal geschaut
Das Ergebnis siehste im Bild
Ergänzung es ist nur beim feld username bei den anderen feldern geht ÄÖÜ
EDIT :
Ich habe in der user.php was geändet und nun geht.
Vorher
code: |
1:
|
VALUES (NULL,'".addslashes(htmlspecialchars($username))."','".md5($password)."','".addslashes(htmlspecialchars($email))."' |
|
jetzt
code: |
1:
|
VALUES (NULL,'".addslashes(addslashes($username))."','".md5($password)."','".addslashes(htmlspecialchars($email))."' |
|
der tip mit der Übermittlung war es... ^^
Danke |
|
|
Ok das hat ja gut geklappt ,
Registrieren und im ACP neu anlegen geht nun .
Aber Editieren geht nicht dann ist das Feld wieder leer ...
Diese kleine fehler machen mich irre
__________________
|
|
22.08.2021 07:13 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
So …
Ich habe mir mal ein ganz neues Test Bord hochgeladen .
um zu sehen ob es ein hausgemachtes Problem ist oder eins von mir .
Also anlegen eines Users geht mit ÄÖÜ usw. im Namen
Jetzt kommt das erstaunliche , selbst bei einem Neuen Bord geht das
Bearbeiten nicht … wenn man dann ÄÖÜ im Usernamen hat … wird es nicht übertragen und das Feld bleibt leer.
Habt ihr das Problem auch …. `
Mich würde das mal interessieren und würde euch mal bitten ein Test User zu machen mit ÄÖÜ im Namen und den dann zu bearbeiten .
ob bei euch auch der User Name weg ist
__________________
|
|
29.08.2021 12:32 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
Edit :
Mit dem Eintrag
in der user.php
code: |
1:
|
header("Content-type:text/html; charset=utf-8"); |
|
weit oben .
werden die Umlaute nun gespeichert aber im portal mies dargestellt.
__________________
|
|
29.08.2021 12:53 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
Edit :
Mit dem Eintrag
in der user.php
code: |
1:
|
header("Content-type:text/html; charset=utf-8"); |
|
weit oben .
und in der user_edit.htm
weit oben
code: |
1:
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> |
|
werden die Umlaute nun gespeichert aber im acp mies dargestellt.
deswegen noch das gemacht ....
Habe nun in der in der acp/user.php über :
code: |
1:
|
eval ("\$userbit .= \"".gettemplate("users_showbit")."\";"); |
|
folgendes eingebaut
code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
$row[username] = str_replace("ü", "ü", $row[username]);
$row[username] = str_replace("ö", "ö", $row[username]);
$row[username] = str_replace("ä", "ä", $row[username]);
$row[username] = str_replace("ß", "ß", $row[username]);
$row[username] = str_replace("Ãœ", "Ü", $row[username]);
$row[username] = str_replace("Ö", "Ö", $row[username]);
$row[username] = str_replace("Ä", "Ä", $row[username]);
eval ("\$userbit .= \"".gettemplate("users_showbit")."\";"); |
|
und in der memberslist.php
auch über
code: |
1:
|
eval ("\$membersbit .= \" ".$tpl->get("memberslist_membersbit")."\";"); |
|
eingebaut ..nun geht alles und ist schick (umständlich aber ok)
code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
$row[username] = str_replace("ü", "ü", $row[username]);
$row[username] = str_replace("ö", "ö", $row[username]);
$row[username] = str_replace("ä", "ä", $row[username]);
$row[username] = str_replace("ß", "ß", $row[username]);
$row[username] = str_replace("Ãœ", "Ü", $row[username]);
$row[username] = str_replace("Ö", "Ö", $row[username]);
$row[username] = str_replace("Ä", "Ä", $row[username]);
eval ("\$userbit .= \"".gettemplate("users_showbit")."\";"); |
|
__________________
|
|
29.08.2021 13:55 |
|
|
|
Hallo,
Habe dir nicht umsonst gesagt wie das Problem zu lösen ist, aber wer nicht "hören will, muss...".
Dass das Problem auch bei "frischen Boards" besteht, ist daher nur logisch...
__________________
|
|
29.08.2021 14:58 |
|
|
knudd
Foren As
Dabei seit: 22.09.2006
Beiträge: 84
0 Filebase-Einträge
Alter: 43 Jahre
Herkunft: Bremen wBB-Version: wBBLite PHP-Version: 7.0 MySQL-Version: 5.0.8 Wo bist du gehostet?: all-inkl
Mitglied bewerten
Level: 33 [?]
Erfahrungspunkte: 537.455
Nächster Level: 555.345
Themenstarter
|
|
|
Zitat: Original von Schrimm
Hallo,
Habe dir nicht umsonst gesagt wie das Problem zu lösen ist, aber wer nicht "hören will, muss...".
Dass das Problem auch bei "frischen Boards" besteht, ist daher nur logisch...
|
|
|
"php.ini" lässt sich nicht ändern beziehungsweise kein zugriff
und script anfertigen kann ich nicht
__________________
|
|
30.08.2021 02:32 |
|
|
|
|
|
|