PDA

View Full Version : ساده ترین شکل ارسال فایل به هاست با ترفند آژاکس



funpatogh
شنبه 17 مهر 1389, 01:47 صبح
یک نمونه توی یک سایت خارجی دیدم که خودم ریز به ریز مطالعه اش کردم و هر چی که فهمیدم رو بدون کد های اضافی براتون گزاشتم
یعنی هر چی که نیاز هست رو فقط گزاشتم و زیبا کردن و ... با خود شماست
البته یکم تغییرات هم دادم که اگر فایل تکراری بود یک دستکاریش بکنه و اسشمو هم تغییر بدهد

jalaladdin
سه شنبه 04 آبان 1389, 12:49 عصر
لطفا در مورد این کد آپلود فایل جزبه جز توضیح دهید
ممنون

<?php
$des="images/".$_FILES['file']['name'];
if(file_exists($des)){
$i=0;
$name=pathinfo($des);
while(file_exists($des))
$des="images/".$name['filename']."_".(++$i).".".$name['extension'];

}

if(move_uploaded_file($_FILES['file']['tmp_name'],$des))
$result=1;
else
$result=0;
sleep(1);
echo "<script language=\"javascript\">window.top.window.stop($result);</script>";
?>

binyaft
سه شنبه 04 آبان 1389, 19:09 عصر
$des="images/".$_FILES['file']['name'];

مسیری که فایل اپلود شده ذخیره میشه


if(file_exists($des))

چک میکنه که ایا قبلا" فایلی با این نام در پوشه images بوده یا نه


while(file_exists($des))
$des="images/".$name['filename']."_".(++$i).".".$name['extension'];

}


حلقه تا زمانی که یک نام فایل ایجاد کنه که در پوشه images نباشه ادامه پیدا میکنه


$name=pathinfo($des);

بدست اوردن یک سری جزییات فایل


if(move_uploaded_file($_FILES['file']['tmp_name'],$des))

چک میکنه که ایا فایل با موفقیت در هاست کپی شد یا نه



sleep(1);

یک ثانیه اجرای کد ها متوقف میشه

موفق باشید

funpatogh
سه شنبه 04 آبان 1389, 21:01 عصر
echo "<script language=\"javascript\">window.top.window.stop($result);</script>";

در آخر هم در فایل اصلی یک فانکشن به نام stop رو اجرا میکنه که آرگومانش 0 یا 1 هست که بعد توی فانکش بررسی میشه و اگر 0 باشه خطا نمایش میدهد و اگر 1 باشده پیغام میدهد که فایل با موفقیت آپلود شده است