Seite 1 von 1

User Guestbook MOD meldet SQL Fehler

Verfasst: 03.11.2008 16:28
von El Draco
Hola,

ich habe das MOD UserGuestbook eingebaut und ich dachte,
das es Fehlerfrei funktionier :oops:
Jedenfalls waren die Tests erfolgreich !

Gestern erhielt ich jedoch folgende Fehlermeldung:

Allgemeiner Fehler
SQL ERROR [ mysql4 ]

Data too long for column 'message' at row 1
[1406]

SQL

INSERT INTO phpbb_profile_guestbook (user_id,
poster_id, gb_time, title, message, user_guest_name, bbcode_uid,
bbcode_bitfield) VALUES (11, 3, 1225660940, 'Was ich Dir wünsche:',
'_______!!!///______\n______( ô
ô )______\n___ooO-(_)-Ooo___\n_.·´¯`·.H.·´¯`·.A.·´¯`·.L.·´¯`·.L.·´¯`·.O.·´¯\
n\n\n•´`•.¸.•´`•.¸.•´`•.¸.•´`•.¸.•´`•.¸.•´`•.\n*******Hola cariño
*******\n•´`•.¸.•´`•.¸.•´`•.¸.•´`•.¸.•´`•.¸.•´`•.\n\nIch wünsche Dir\n’ *..`
’ °´..`’ °´.*’ °´..`’ °´..`’ °´.\n[color=#0000FF:3m2m8rgf]einen
super\nharmonischen MONTAG[/color:3m2m8rgf]\n’ *..`’ °´..`’ °´.*’ °´..`’
°´..`’ °´.\n[color=#BF40BF:3m2m8rgf]einen\ntollen
DIENSTAG[/color:3m2m8rgf]\n’ *..`’ °´..`’ °´.*’ °´..`’ °´..`’
°´.\n[color=#FF8000:3m2m8rgf]einen netten MITTWOCH[/color:3m2m8rgf]\n’ *..`’
°´..`’ °´.*’ °´..`’ °´..`’ °´.\n[color=#40BF40:3m2m8rgf]einen fantastischen
DONNERSTAG[/color:3m2m8rgf]\n,’ *..`’ °´..`’ °´.*’ °´..`’ °´..`’
°´.\n[color=#40BFFF:3m2m8rgf]einen lustigen FREITAG[/color:3m2m8rgf]\n’ *..`
’ °´..`’ °´.*’ °´..`’ °´..`’ °´.\n[color=#BF00FF:3m2m8rgf]einen
erfrischenden SAMSTAG\nund einen[/color:3m2m8rgf]\n’ *..`’ °´..`’ °´.*’
°´..`’ °´..`’ °´.\n[color=#FF8000:3m2m8rgf]verrückten
SONNTAG[/color:3m2m8rgf]\n’ *..`’ °´..`’ °´.*’ °´..`’ °´..`’
°´.\n[color=#FF0000:3m2m8rgf]Kurz gesagt.: \nEine schöne NEUE
WOCHE.!!![/color:3m2m8rgf]\n\nmuchos besiños
[url=http://www.smilies.4-user.de:3m2m8rgf][img:3m2m8rgf]htt
p://www.smilies.4-user.de/include/Tanzen/sm ... nz_056&#46
;gif[/img:3m2m8rgf][/url:3m2m8rgf]', 'flamenca', '3m2m8rgf', 'Gg==')

BACKTRACE


FILE: includes/db/mysql.php
LINE: 158
CALL: dbal_mysql->sql_error()

FILE: memberlist.php
LINE: 738
CALL: dbal_mysql->sql_query()

Na ja,
wie man sieht, sind meine Damen sehr creativ ;-)

Meine Frage ist jetzt,
ist die Textlänge für das Gästebuch begrenzt oder dürfen keine BB-Codes enthalten sein ???

Die Eintrage in der DB sind wie folgt:

title.............................varchar(255)...latin1_swedish_ci
message......................text................latin1_swedish_ci
bbcode_uid..................varchar(8).......utf8_bin
bbcode_bitfield.............varchar(5).......utf8_bin
user_guestbook_limit....varchar(255)...latin1_swedish_ci
user_guest_name.........varchar(64).....latin1_swedish_ci

Saludos
El Draco

Re: User Guestbook MOD meldet SQL Fehler

Verfasst: 03.11.2008 16:33
von Metzle
El Draco hat geschrieben:
user_guestbook_limit....varchar(255)...latin1_swedish_ci
Hallo,

würde sagen, dass hier eine Zeichenbegrenzung von 255 Zeichen vorliegt. Ändere doch mal varchar entsprechend ab, dass der Eintrag eigentlich reinpassen würde und schaue, ob es das war :)

Re: User Guestbook MOD meldet SQL Fehler

Verfasst: 03.11.2008 17:24
von El Draco
Metzle hat geschrieben:
El Draco hat geschrieben:
user_guestbook_limit....varchar(255)...latin1_swedish_ci
Hallo,

würde sagen, dass hier eine Zeichenbegrenzung von 255 Zeichen vorliegt. Ändere doch mal varchar entsprechend ab, dass der Eintrag eigentlich reinpassen würde und schaue, ob es das war :)

Hola Metzle,

ich habe den DB Eintrag auf varchar(2048) verändert.
Dies hat das Problem aber nicht beseitigt.

Ich habe daraufhin den DB Eintrag

message....text....latin1_swedish_ci

in

message....text....utf8_bin

verändert. Jetzt funktioniert es.
Ich habe da jetzt einmal eine Frage zu,
wäre es nicht Grundsätzlich Sinnvoll, das Textfelder in der DB als UTF8 definiert werden ?
Wie ich in den Recherchen hier im Forum festgestellt habe,
können so sehr viele Probleme mit z.B. mit Umlauten aus der Welt geschaffen werden.

Saludos
El Draco

Verfasst: 03.11.2008 17:24
von Miriam
Die Spalte message in der Tabelle phpbb_profile_guestbook ist sicherlich vom Typ varchar(255). Leider geht mehr nicht bei varchar.

Ändere das z.B. mit:

Code: Alles auswählen

ALTER TABLE `phpbb_profile_guestbook` CHANGE `message` `message` TEXT
im phpmyadmin.

Verfasst: 03.11.2008 17:40
von El Draco
Miriam hat geschrieben:Die Spalte message in der Tabelle phpbb_profile_guestbook ist sicherlich vom Typ varchar(255). Leider geht mehr nicht bei varchar.

Ändere das z.B. mit:

Code: Alles auswählen

ALTER TABLE `phpbb_profile_guestbook` CHANGE `message` `message` TEXT
im phpmyadmin.
Hola Miriam,

da haben sich wohl unsere Antworten überschnitten.

Das Feld "message" war schon vom Type "Text"
Ich habe es jedoch als UTF8_bin festgelegt,
jetzt funktioniert es ;-)

Saludos
El Draco

Verfasst: 03.11.2008 18:14
von Miriam
Supi :-) :grin:

Re: User Guestbook MOD meldet SQL Fehler

Verfasst: 22.01.2009 22:58
von invisible_
Das mit dem UTF umstellen hat mir auch geholfen. Das sollte man generell in die MOD nehmen. Jetzt gehen auch alle zeichen ohne MYSQL Fehler :) Danke!

Re: User Guestbook MOD meldet SQL Fehler

Verfasst: 23.01.2009 22:42
von Trash-Master
Nochmal ein SQL Befehl für alle:

Code: Alles auswählen

ALTER TABLE `phpbb_profile_guestbook` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin
Präfix muss ggf. angepasst werden.

gruß,
Trash-Master