עתה, כל מה שנשאר זה להציג באמצעות Javascript את ההודעה לאחר שהמשתמש שלח את הטופס. תחת תגית ה-Head נחפש את קטע ה-Javascript. בתוך קטע ה-Javascript נמצא את פונקציית ה-onLoad:
function onLoad() {
//Dialog pops up saying about the user comment post status
}
</script>
פונקציה זו נקראת כאשר העמוד שלנו עלה (אם נסתכל על תגית ה-body נראה שהיא מגיבה לאירוע ה-onLoad בכך שהיא קוראת לפונקציה זו). כל מה שעלינו לעשות זה לבצע את השינויים המתאימים בפונקציה כך שתקפוץ ההודעה שתתריע למשתמש על סטטוס התגובה שלו. לכן, נחליף את קטע הקוד בקטע הבא:
function onLoad() {
<?php
//Show dialog only if user submitted the form
if (isset($_POST['submit'])) {
echo "alert('$dialog_text')";
}
?>
}
</script>
זהו! כעת כאשר נכניס תגובה ונלחץ על כפתור ה-"Leave your comment" ההודעה הבאה תופיע:
ניתן להוריד את קוד המקור מן הקישור הבא.
סיכום וטיפים חשובים
במדריך זה למדנו מה הוא SQL, על התחביר שלו והיכן משתמשים בו. ראינו במדריך כיצד אנו משלביםSQL עם עמודי האינטרנט שלנו. במדריך זה לא התעמקנו על הפן האבטחתי אך עלינו לדעת מספר דברים חשובים:
- כל מידע אשר המשתמש מכניס בכול צורה שהיא (כמו למשל בטופס שיצרנו) יכולה להוות פרצת אבטחה, לכן אסור לנו לבטוח על המידע המתקבל ממנו.
- אחת מן השיטות הנפוצות שבאמצעותן המשתמש יכול לבצע להשגת מידע/לבצע שינויים במסד הנתונים נקראת SQL Injections. עלינו לדעת לעבור על המידע המתקבל מן המשתמש ולערוך תווים שאינם רצויים. לכן במקרה שלנו, עלינו להשתמש בפונקציית ה-mysql_real_escape_string.
- שיטה ידועה נוספת שבאמצעותה המשתמש יכול לקחת שליטה על המשתמשים הגולשים באתר ו"לגנוב" מהם מידע מסוים (או אפילו במקרים מסוימים להשתיל להם דברים על המחשב) נקראת Cross Site Scripting. לכן, עלינו לוודא שהמשתמש לא מכניס קוד זדוני ולהסיר תוויות HTML שאינן נחוצות באמצעות פונקציית ה-strip_tags.
- יש לוודא שהמשתמש שבו ניגשים למסד הנתונים או לשרת ה-FTP הם מאובטחים. יש לוודא שהסיסמא שבה אנו משתמשים חזקה ומורכבת.
במדריך זה השתמשנו ב-EasyPHP בכדי להריץ שרת באופן לוקאלי. במציאות – האתרים מאוחסנים על שרתים ייעודים אשר אמורים לעמוד בעומס רב של משתמשים.
מרכיב חשוב נוסף היא בצורה שבה מסד הנתונים שלנו מורכב. ככול שמסד הנתונים יהיה מורכב וגדול יותר כך השאילתות שנריץ ייקחו זמן רב יותר. במקרים כאלה, עלינו לשאוף לטבלאות פשוטות כמה שיותר ושאילתות כמה שפחות מורכבות. מידע נוסף על הרצת שאילתות יעילות יותר ניתן למצוא במאמר הבא.
שיהיה לכולנו המשך למידה מהנה ומעניינת!