העלאת קבצים לשרת באמצעות PHP

‏ • 13 באוגוסט, 2004

חלק ראשון: טופס שליחה, upload.html

בשביל ההשרת php יזהה שנשלח קבצים צריך בטופס להגדיר ששולחים קבצים ושימור את זה בתור קובץ זמני










1  








<form action="upload.php" method="post" enctype="multipart/form-data">

זה רק הטופס בשביל המשתמש יכול לבחור קבצים מהמחשב שלו נשתמש בinput file










1  








<input type="file" name="file1">

ונוסיף input submit. הטופס במלואו:










1
2
3
4  








<form action="upload.php" method="post" enctype="multipart/form-data"><br>
<input type="file" name="file1"><br>
<input type="submit" value="upload !"><br>
</form><br>


חלק שני: קבלת הקובץ מהשרת, upload.php

בphp יש פונקציות שאיתם יותר פשוט לעבוד (בניגוד לasp)
בphp בשביל לנתח את הקובץ + לשמור את הקובץ ולקבל את השם והגודל מאוד קל ופשוט.
בשביל לשמור את הקובץ על השרת נשתמש בפוקנציה move_uploaded_file










1
2
3
4
5
6  








<?php
print $file1 // ידפיס את הקובץ הזמני של input file1
print $file1_name // יחזיר את השם של הקובץ
print $file1_size // יחזיר את גודל הקובץ בבתים
print $file1_type // מחזיר סוג הקובץ
?>

הפונקציה move_uploaded_file המערך הראשון שלה זה הקובץ הזמני במקרה זה $file1
המערך שני הואאיפה תרצה לשמור את הקובץ בשרת גם את השם וגם המיקום מבקרה זה נפתח תיקיה בשם uploads
ונכניס לפוקנציה "uploads/".$file1_name










1
2
3
4
5
6
7
8
9  








<?php
if ($file1 !== "")
{
   move_uploaded_file( $file1 , "uploads/".$file1_name );
   print "הקובץ נשתמש בשרת , <a href="uploads/".$file1_name."">uploads/".$file1_name."</a>";
}else{
   print "לא נשלח קובץ";
}
?>

כמה דברים: $file_type מבנה שלו הוא

x/y

x = סוג הקובץ תמונה או קובץ הפעלה או קובץ טקסט
y = סיומת הקובץ gif asp php
אם נשלח תמונה עם סיומת gif אז זה יחזיר image/gif

בהצלחה!

תגיות: , ,

תגובות בפייסבוק