שלח תשובה

זירת השאלות

509
צפיות
10
תשובות

החלפת תווים בהכנסה…

,‏ 7 ביוני, 2004

היי אנשים.

יש לי פונקציה שנועדה להחליף תווים לפני ההכנסה ל בסיס הנתונים אבל היא לא עובדת. הנה הפונקצייה:


FUNCTION cleanUp(TheString)
DIM oRegExp, sCleaned

oRegExp = NEW RegExp
oRegExp.Global = TRUE 'True to replace ALL instances of characters
oRegExp.IgnoreCase = FALSE

oRegExp.Pattern = "[>]"
sCleaned = oRegExp.Replace(my_string, ">") 'Start with my_string

oRegExp.Pattern = "[<]"
sCleaned = oRegExp.Replace(sCleaned, "<") 'Switch to sCleaned

oRegExp.Pattern = "[']"
sCleaned = oRegExp.Replace(sCleaned, """)

oRegExp.Pattern = "[&]"
sCleaned = oRegExp.Replace(sCleaned, "&")

cleanupString = sCleaned
END FUNCTION


זה ה SQL שלי:


SQL = "INSERT INTO tstTBL (author,title) VALUES('" & cleanUp(author) & "','" & cleanUp(title) & "')"


וזו ההודעת שגיאה:


Type mismatch: 'cleanUp'

/poma/admin/booksHandler.asp, line 75


למה זה לא עובד לי?
אשמח לכל תשובה או רעיון.

תודה!

תגיות:

10 תשובות

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

    נסה כך:

    FUNCTION cleanUp(TheString)

    DIM oRegExp, sCleaned
    sCleaned=TheString

    oRegExp = NEW RegExp
    oRegExp.Global = TRUE 'True to replace ALL instances of characters
    oRegExp.IgnoreCase = FALSE

    oRegExp.Pattern = "[\>]"
    sCleaned = oRegExp.Replace(my_string, ">") 'Start with my_string

    oRegExp.Pattern = "[\<]"
    sCleaned = oRegExp.Replace(sCleaned, "<") 'Switch to sCleaned

    oRegExp.Pattern = "[']"
    sCleaned = oRegExp.Replace(sCleaned, """)

    oRegExp.Pattern = "[\&]"
    sCleaned = oRegExp.Replace(sCleaned, "&")

    cleanupString = sCleaned
    END FUNCTION

  2. mynameispepper הגיב:

    מחזיר לי אותה השגיאה. האם אפשר…
    לעשות את זה אחרת?
    איך אתה מחליף את התווים האלו? מה הסינטקסט שאתה משתמש בו?

    תודה אוריקס.

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

    אוקיי
    בוא ננסה לרגע לעזוב את ה SQL.

    cleanUp(author)

    מחזיר לך שגיאה?

  4. mynameispepper הגיב:

    מצאתי את הבעייה
    שחכתי לשים <%%> – אופס…

    בכל אופן, אתה יכול להראות דוגמא של איך נראה הקוד שלך בהכנסה?

  5. mynameispepper הגיב:

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

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

    If ProductsNumberOnline = ProductsNumber Then

    משפט ה IF שלי מתעלם מהמספרים האלו. שיניתי את המשתנה של מספר המוצרים למספר "ממשי"… וזה כן עבד.

    If ProductsNumberOnline = 5 Then

    בדקתי גם ששני המשתנים מכילים את אותו מספר (כדי שהתנאי יתקיים) אבל אני פשוט לא מבין למה זה לא עובד.

    אשמח לקבל רעיון או הצעה או פתרון…!

    תודה –
    פפר

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

    חייבת להיות לך טעות הקלדה או משהו
    במשתנה ProductsNumber.

  7. mynameispepper הגיב:

    הנה הפתרון…
    הייתי צריך לעטוף את זה עם cint()

    תודה.

  8. mynameispepper הגיב:

    בעיייה עם העברת נתונים מדף לדף…
    בניתי דף שמבקש שם וסיסמא מהמשתמש.
    אם וכאשר הנתונים נכונים הדף מועבר לכתובת הבאה:


    member.asp?id=2

    הבעייה היא שאם המשתמש משנה את מספר ה UD ולוחץ "אנטר" הוא יקבל את הפרטים של משתמש אחר.
    איך אפשר למנוע את זה?

    תודה –
    פפר

שלח תשובה