אני לא אשף בהעלאת קבצים, אבל בכל זאת תוסיף את הסינון של תווים לא חוקיים בשם הקובץ. זה ימנע בעתיד בעיות גם בקידוד.
אל תשכח לעשות כמובן גם בדיקות בצד הלקוח בעזרת JS לפני שאתה מעלה את הטופס.
אם אתה רוצה לאפשר להעלות רק תמונות, אז אני זוכר שיש קטע שאפשר לשמור קובץ טקסט (TXT) ואז לשנות לו את הפורמט ל-gif והשרת יחשוב שזה תמונה סתם ככה כי אין פה בדיקה לעומק של הקובץ, ולכן אם ייכנסו לקובץ הזה בשרת שלך יראו את התוכן של קובץ הטקסט. בחיים לא ניסיתי לתקן את הבאג, אבל אולי אפשר באמצעות ניתוח הנתונים של התמונה עם getimagesize(). היא בטח תחזיר false, אם זו לא תמונה אמיתית.
בהצלחה.
|