PDA

View Full Version : کد دانلود فایل از یک فولدر حفاظت شده( Password Encrypted)



kazemsoft
دوشنبه 11 دی 1391, 10:31 صبح
سلام به همگی
بنده نیاز به یک کد php دارم که مشابه اش را هیچ جا تو اینترنت ندیدم.

اطلاعات یک سایت من بصورت روزانه در یک فولدر یک سرور بصورت zip بک آپ گرفته می شود و این فولدر با username و password حفاظت می شود. به اسکریپتی نیاز دارم تا بتواند آن فایل زیپ را بصورت اتوماتیک روزانه از آن سرور دانلود کند.
نام فایل همیشه ثابت است.
نام کاربری و رمز عبور ورود به فولدر هم همیشه ثابت است.

ممنون میشوم اگر راه حلی پیش پای من بگذارید.
البته اگر کسی اسکریپت بدرد بخور به من بدهد حاضرم هزینه اش را هم پرداخت کنم.

mamali-mohammad
دوشنبه 11 دی 1391, 13:57 عصر
دانلود کنه رو سیستم خودت ؟

Unique
دوشنبه 11 دی 1391, 15:08 عصر
با curl میتونی این کار را انجام بدی ، اینطوری :


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://domain/passdprotected/filename");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
$output = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);

کافیه با این چند خط یک phpب بنویسید و با cron jobs یا windows scheduler به صورت روزانه تنظیم کنید.

البته برای این کار نیاز به php نیست و با bash script توی لینوکس و Bat فایل های ویندوز به راحتی میشه این کار را کرد.

kazemsoft
چهارشنبه 13 دی 1391, 11:42 صبح
خیلی خیلی ممنون.
میشه یکم توضیحات بیشتر بدهید.
مثل اینکه فایل کجای سرور من ذخیره میشود؟

Unique
چهارشنبه 13 دی 1391, 17:10 عصر
دوست عزیز متاسفانه سیاست این سایت گذاشتن کد نیست و واقعا دوستان از جمله خود من شاید وقتش را نکنیم ! اون اسکریپت بالا مقدار output$ ی که برمیگردونه را میشه به صورت یک فایل هر جای سیستم بخواین ذخیره کنید. با file_put_contents اما با stream هم میشه ، چون شما از بهمن 1385 عضوین اما 8 تا پست بیشتر نزدین اینم کد (عجب استدلالی بودا !) :


$file_url = "http://www.serieawallpaper.info/wp-content/uploads/2012/10/Bianconeri-Juventus-The-Italian-Sweetheart.jpg";
$path = 'c:/juventus.jpg';

$fp = fopen($path, 'w');

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $file_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// uncomment if this file is protected by password
//curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
//curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_FILE, $fp);
$output = curl_exec($ch);
curl_close($ch);
fclose($fp);
echo "Download Compelete.";

kazemsoft
چهارشنبه 13 دی 1391, 22:10 عصر
بی نهایت تشکر!
یک افق جدید جلوی چشمام باز شد...
در مورد اینکه چرا پست زیاد نزدم به این خاطره که اکثراً جواب همه ی سوال هامو سعی می کنم سرچ کنم تا پیدا کنم اما در این مورد بخصوص خیلی به خودم فشار آوردم اول رفرنس های خارجی رو مرور کردم بعد گفتم شاید متخصص های ایرانی خودمان راه حلی برای این موضوع داشته باشند که البته سربلندم کردید.
بازم ممنون.