View Single Post
ישן 13-07-06, 18:50   # 12
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

שוב, CLEAN זה פונקציה שאני בניתי שמריצה את הפונקציה MYSQL_REAL_ESCAPE_STRING
על כל איברי המערך.

וככה מגינה מפני התקפות של SQL לפני הכנסה למסד הנתונים

עכשיו לגבי MAGIC QOUTE

אני אסביר, אפשרות זו היא אפשרות שנועדה למתכנתים מתחילים, בפשטות MAGIC QOUTES
מוסיף סלאשים למשתנים הגלובלים , GET POST וכד'. בדומה ל ADDSLASS
עכשיו, לא לכל שרת אפשרות זו פועלת, מה גם שאפשרות זו מאיטה את ה PHP
לכן לא מומלץ להשתמש בה ובגלל זה רב השרתים לא מפעילים אותה.
אבל אי אפשר לסמוך על זה

לדוגמא, בניתי מערכת דיי גדולה, בסביבות ה 3 אלף שקל.

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

כלומר אם MAGIC QOUTE פעיל...אז תעשה stripslashes לכל איברי המערכים של המשתנים הגלובלים וכמה שיותר מוקדם יותר טוב,
לדוגמא אני משתמש בקובץ GLOBAL אז זה בין השורות הראשונות שאני שם.

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

וככה אתה מבטל להמשך הסקריפט
set_magic_quotes_runtime(0);
@ini_set('magic_quotes_sybase', 0);

עכשיו המלצה שלי - לא כל כך קשור לטרייד תעשה בדיקה דומה ל REGISTER GLOBAL

אם לא הבנת משהו, תגיד בדיוק מה...
  Reply With Quote