همانطور که دوست عزیزمون فرمودن ساده ترین راه استفاده آدرس تصویر و ذخیره آدرس داخل دیتا بیسه و خود فایل هم می بایست داخل یکی از فولدرهای سرورت ذخیره کنی.
اول اینکه برای آپلود فایل می بایست فرم از نوع multipart/form-data باشه پس ساختار فرم شما باید به شکل زیر باشه
HTML:
<form method="POST" action="upload.php" enctype="multipart/form-data">
<input type="file" name="fileUpload" size="30" dir="ltr">
<br>
<input type="submit" value="ارسال" name="B1">
<input type="reset" value="ازنو" name="B2">
</form>
این ساختار فرم شما می باشد. پس از submit فرم شما می بایست شما می بایست فایل رو از داخل فولدر tmp به فولدری که می خوای منتقل کنی.
وقتی فایلی آپلود می شود کلیه اطلاعات در متغیری به نام $_FILES ذخیره می شود که شما می توانید بوسیله یک print_r کلیه اطلاعات رو چاپ کنید.
ولی به طور کلی این کار شامل چند مرحله است
1- اسم فولدری که فایل آپلود شده داخل آن قرار می گیرند ($uploaddir)
2- اسم کامل فایل که می بایست در داخل دیتا بیس قرار بگیرد. ($uploadadd)
3-آدرسی که فایل می بایست به اونجا منتقل بشه.($uploadfile)
4- چک کردن موفقیت آمیز بودن عمل انتقال .
5- در صورت موفقیت آمیز چاپ جمله یا اعمال کوئری مورد نظر من در اینجا چون ساختار جداول و دیتا بیس شما رو نمی دونستم چیزی ننوشتم ولی شما می تونید در این قسمت آدرس مورد نظر و ذخیره کنی.
6- در صورت عدم موفقیت عمل انتقال چاپ پیام خطا.
PHP:
$uploaddir = '/var/www/uploads/';
$uploadadd = 'uploads/'.basename($_FILES['fileUpload']['name']);
$uploadfile = $uploaddir . basename($_FILES['fileUpload']['name']);
if (move_uploaded_file($_FILES['fileUpload']['tmp_name'], $uploadfile)) {
echo "successfully uploaded.";
// mysql_qury ("INSERT INTO $table (uploadadd) VALUES ($uploadadd)") or die (mysql_error());
} else {
echo "Error";
}
در صورتی که شما منظور از ذخیره سازی فایل داخل خود دیتا بیس بگید تا من نحوه ذخیره سازی فایل داخل دیتابیس هم توضیح بدم .
در ضمن داخل خود سایت پی اچ پی هم مثال های ساده ای در این رابطه توضیح داده