03-08-2008, 18:17
|
מנהל
|
|
חבר מתאריך: 26.07.08
הודעות: 6,473
|
|
ציטוט:
1. "בדקת את המחרוזת שאתה מקבל מהעורך עוד לפני הכנסתה למסד הנתונים?" ------> היכן בדיוק?
|
פשוט מאוד: בעמוד שבו מנתחים את המידע של הטופס שהמשתמש שלח, תוציא למסמך ה-HTML את ה-output של תוכן עורך ה-WYSIWYG.
ב-PHP כותבים זאת כך:
קוד PHP:
// After the user submits the form
echo $_POST['content_of_editor'];
ציטוט:
"יכול להיות שאתה מכניס את המידע לטור שהאורך שלו קטן מידי בשביל האותיות בעיברית (הרי אותיות בעיברית המקודדות ב-UTF8 לוקחות פעמיים מקום מאשר אותיות באנגלית, גם אם מספר התווים הוא אותו הדבר בדיוק)." ---------- > אתה מתכוון על המסד נתונים?
|
כן.
הרי כפי שכתבתי, בקידוד UTF-8 - אם כותבים 10 תווים באנגלית ו-10 תווים בעברית, התווים באנגלית יקחו מקום של 10 bytes, ואילו התווים בעברית ייקחו מקום של 20 bytes.
מכאן אתה יכול להסיק שכנראה אורך הטור במסד הנתונים קטן מידי מכדי להכיל את כל המחרוזת בעברית, ויש להגדילו.
ציטוט:
3. "ב-MYSQL, האורך המקסימלי האפקטיבי של טור בעל קידוד UTF-8 הוא חלקי 3 מהאורך הנתון הרגיל (= מהאורך של הטור כאשר יש קידוד "רגיל" שהוא אינו קידוד multi-byte)." ----------> אם כך מה עלי לעשות?
|
כמו שואדים אמר, צריך להגדיל את גודלו הנוכחי של הטור במסד הנתונים שלך, שאליו אתה מכניס את המידע מהעורך fckeditor.
במקרים כאלה, אני הייתי מסווג את גודל הטור כ- MEDIUMTEXT, או כ- LONGTEXT במקרים קיצוניים.
למידע נוסף על גודלו של כל טור: http://dev.mysql.com/doc/refman/5.0...e-overview.html
|