העלאת קבצים בשפת PHP

By Learn PHP,

  Filed under: PHP
  Comments: סגור לתגובות על העלאת קבצים בשפת PHP

העלאת קובץ לשרת, מתבצעת על ידי טופס אשר מה שמיוחד בו זה:

המאפיין הזה בטופס נותן לנו את האפשרות לשלוח קובץ.
אנו נשתמש ב input מסוג file ולבסוף בעזרת המשתנה הגלובאלי $_FILES[].

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

דוגמא של העלאת קובץ

הכל ידוע לנו חוץ משהגדרנו,

 זה אומר שאפשר להעביר קבצים (בעברית פשוטה), ללא זה הטופס לא יוכל להעביר שום קובץ.

הגדרנו סוג input חדש מסוג file, ושם המפתח של המשתנה הגלובאלי $_FILES[], הוא my_file.

נעבור לחלק העליון, כאשר לחצנו על כפתור השליחה, ועברנו את ה if הראשון, ב if השני אנו נתקלים בפונקציה חדשה ששמה empty.
פונקציה זו,פשוטה מאוד, היא בודקת אם המשתנה ריק או מלא. במקרה שלנו אנו בדקנו אם הוא ריק, בגלל ששמנו את האופרטור הזה ! שזה אומר שתהפוך את הערך הבוליאני של מה שתקבל. לכן מה שעושה שורת ה if הזו, היא בעצם בודקת האם המשתנה הגלובאלי של שם הקובץ, אכן מולא.

במשתנה $dir, אנו רואים עוד פונקציה חדשה, getcwd(), תפקידה הוא לתת את המיקום הראשי, של הקובץ הנוכחי שאתם מריצים אותו, ולכן במצב הזה, הקובץ שתעלו אותו לשרת שלכם, יהיה בספרייה של הקובץ שתריצו את התוכנית הזו.
על הפונקציה move_uploaded_file, הרחבנו כבר בהתחלה, אבל חשוב לציין שבאורגמנט השני, אנו קובעים את המיקום שהקובץ יעלה אליו בשרת, ואת שמו החדש. במקרה שלנו השארנו את אותו השם שהיה לקובץ לפני שעלה לשרת.
חשוב לציין שאת מיקום הקובץ החדש שהעלנו אפשר לשנות באמצעות שינוי המשתנה של $dir, פשוט להוסיף ספרייה אחרי ה "/".

דוגמת להעלאת מספר רב של קבצים

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

למספר הקבצים שאנו רוצים מקסימום להעלות לשרת.

דוגמת מחיקת קובץ

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

הפונקציה file_exists בודקת האם הקובץ אכן נמצא בשרת, ו- unlink זוהי הפונקציה שמוחקת את הקובץ, כאשר מכניסים לה את מיקום ושמו של הקובץ בשרת.

Comments are closed for this post.