לא כל כך הבנתי את השימוש בפקודה הזאת כי כשהוספתי אותה זה אפילו לא הכניס את המילה שרשמתי לבסיס נתונים כנראה שפשוט לא השתמשתי בזה נכון ואני לא כל כך מבין איך
אני לא בטוח שהבנתי מה אתה מנסה לעשות… מה השימוש של מסד הנתונים כחלק מהצ'אט? הוא מאחסן את ההיסטוריה של הצ'אט? זה רשימה של מילים אסורות?
אם אתה מנסה להכניס משפט למסד והסימנים הללו אינם נקלטים עליך לעשות כך: את המשפט המתקבל שמור במשתנה. כשאתה שולח query למסד דרך mysql_query עליך לעשות כך: http://pastebin.com/4UerpgTP
הסיבה שסימנים אלו לא נכנסים למסד הנתונים היא שאלו סימנים שמורים של השפה. לא רק שהסימנים לא יופיעו ללא שימוש בפקודה, אלא הם אף מעוותים לך את הquery שאתה שולח, והם מאפשרים להאקרים להשתיל קוד זדוני בסקריפט שלך ללא מאמץ (תלמד קצת על sql injection – יש אפילו מאמר קטן פה באתר).
6 תשובות
אני מניח שאתה משתמש בPHP, אך תקן אותי אם אני טועה…
נסה להשתמש בפקודה mysql_real_escape_string()
דוגמא קטנה העושה שימוש בפקודה זו:
http://pastebin.com/BEUnMVhK
לא כל כך הבנתי את השימוש בפקודה הזאת כי כשהוספתי אותה זה אפילו לא הכניס את המילה שרשמתי לבסיס נתונים כנראה שפשוט לא השתמשתי בזה נכון ואני לא כל כך מבין איך
אני לא בטוח שהבנתי מה אתה מנסה לעשות… מה השימוש של מסד הנתונים כחלק מהצ'אט? הוא מאחסן את ההיסטוריה של הצ'אט? זה רשימה של מילים אסורות?
אם אתה מנסה להכניס משפט למסד והסימנים הללו אינם נקלטים עליך לעשות כך:
את המשפט המתקבל שמור במשתנה. כשאתה שולח query למסד דרך mysql_query עליך לעשות כך:
http://pastebin.com/4UerpgTP
מה שהפקודה עושה:
http://www.w3schools.com/php/func_mysql_real_escape_string.asp
הסיבה שסימנים אלו לא נכנסים למסד הנתונים היא שאלו סימנים שמורים של השפה.
לא רק שהסימנים לא יופיעו ללא שימוש בפקודה, אלא הם אף מעוותים לך את הquery שאתה שולח,
והם מאפשרים להאקרים להשתיל קוד זדוני בסקריפט שלך ללא מאמץ (תלמד קצת על sql injection – יש אפילו מאמר קטן פה באתר).
תודה על העזרה הצלחתי
השימוש בפקודה הוא שפתר את התקלה?