שלח תשובה

זירת השאלות

357
צפיות
4
תשובות

בעייה בכתיבת פורום

,‏ 11 בפברואר, 2005

שלום,

אני בונה פורום, ובו כל משתמש כותב את הודעתו, וזו נכנסת לשדה מסוג "תזכיר" ב-DB של ACCESS.
הבעיה היא שגם אם המשתמש כותב בכמה שורות, כל ההודעה נכנסת כשורה אחת ל-DB, ואח"כ יוצאת כהודעה בפורום כאילו כתבו את הכל בשורה אחת.
אשמח לקבל עזרה בפיתרון הבעייה.
תודה,
תומר.

תגיות:

4 תשובות

  1. Just-Tal הגיב:

    ככה:

    msgtext = Replace(msgtext,chr(13),"<br />")

    תוסיף את זה לפני שאתה מציג את ההודעה וזה יציג רווחים בין שורות.

  2. זהר פלד הגיב:

    הערה קטנה על יעילות…
    עדיף לבצע את ההחלפה בזמן הכנסת ההודעה, ולא בזמן ההצגה שלה.
    תחשוב על זה שכל הודעה מוכנסת למסד הנתונים פעם אחת, אבל מוצגת המון פעמים, ומדובר כאן על שדה מסוג "תזכיר", שאין לו ממש בעיה של אורך מחרוזת.

  3. Just-Tal הגיב:

    אני יודע…
    בניתי פורום ועשיתי איך שאמת…
    אבל אם מתכנת רוצה לשמור על הDB שלו בדיוק כפי שהמשתמש הכניס את ההודעה…?

    למרות שאני לא רואה סיבה שמשהו ירצה בזאת.

    צודק…

    לילה טוב.

    טל.

  4. אוריקס הגיב:

    אם זה VBS אז לא בטוח
    כי ההחלפה שם כ"כ איטית שזה מאד מעמיס על השרת, ראה מה שקורה בתפוז. זאת הסיבה שהם התנגדו להוספת אמוטיקונים הרבה זמן.

    בכל מקרה, צריך ואף חובה לחשוב גם על שלמות הנתונים: מה יקרה, למשל, אם אני אחפש באחת ההודעות :- ) – זה בשום אופן לא ימצא לי הודעה שיש בה את האייקון הזה. אפשר גם לחשוב ההפך: אם אני אחפש img src אני אקבל את כל ההודעות שיש בהן אמוטיקונים, גם אם סתם חיפשתי קוד עם המילים הללו.
    עוד בעייה היא שאם יש לך שדה טקסט שהקיבולת שלו היא 400 תווים, החלפת הודעה שארכה 350 תווים אבל יש בה כמה אמוטיקונים תגרום לשגיאה כי עברתי את מכסת התווים של השדה.

    אילו הסיבות שאני, לפחות, עושה את זה בקליינט. פונקציה שתחליף לי את התווים תיקח אפס זמן. דרך אגב, כך גם נכון לגבי כל דבר כמו למשל החלפת תווים בעיתיים.

שלח תשובה