تشکرها : 1501
( 1735 تشکر در 995 ارسال )
در پیرو صحب های قبلی پیرامون نوستن یک سیستم فایلی منیجر . یک مشکل جدید واسم ایجاد شد.
من با استفاده از یک یوز پسورد وارد سیستم میشم و اطلاعات اهراز هویت رو در سشن قرار میدم.
حالا روی لینک کلیک میکنم . به پیج منحصر به فردی میره. در اونجا چک میکنم که آیا کاربری با او ای پی وارد سیستم شده یا خیر.
حالا اگر تو بروز عمل کلیک رو انجام بدیم به خوبی همه چیز انجام میشه.
اما وقتی لینک رو میدیم به یک دانلود منیجر. اصلا هیچ شسنی وجود نداره. در صورتی که در هر دو حالت بر روی یک سیستم انجام میشه
تشکرها : 601
( 1128 تشکر در 412 ارسال )
نمی دونم چی کار دارین میکنین. ولی اگه دارین از لینک مستقیم برای دانلو استفاده میکنید اینکار رو نکنید تامشکلتون حلشه. از کدهای زیر استفاده کنید. تما دانلودها به یک صفحه باید بیاد بایک پارامتر گت. بعداز بررسی اتن تیکیشن و.... می تونید با این دستورات فایل رو برای درخواست دهنده ارسال کنید
کد پیاچپی:
<?php
header('Content-type: image/jpg');
header('Content-Disposition: attachment; filename="Sunset.jpg"');
readfile("Sunset.jpg");
?>
امید وارم تونسته باشم کمکتون کنم
علم تاج افتخار دنیا و یادگار پس از مرگ است
تشکرها : 1501
( 1735 تشکر در 995 ارسال )
دیشب کلی روش این موضوع سرچ کردم و دیدم دانلود منیجر ها واسه خودشون روش خاصی دارند بعضی ها از کوکی بروزی کع ساپورت میکنند استفاده نی کنند و بعضی ها نمی کنند و خودشون وصل میشند.
سر این اصل بهترین روش استفاده از سشن ها و دیتابیس هست . که برای فایل منیجر باید برای صحت ورود کاربر به سایت از دیتابیس بهره بگیرم
تشکرها : 601
( 1128 تشکر در 412 ارسال )
یعنی شما می فرمایید که اگه سشن ایجاد نشده باشه نرم افزار دانلودکه شما بهش آدرس مثلا download,php?file=picture.jpg
رو دادین خود به خود دانلود میکنه؟
کد پیاچپی:
<?php
session_start();
if(isset($_SESSION['username']))
{
if(isset($_GET['file']))
{
header('Content-type: image/jpg');
header('Content-Disposition: attachment; filename="Sunset.jpg"');
readfile("Sunset.jpg");
}
}
?>
علم تاج افتخار دنیا و یادگار پس از مرگ است
تشکرها : 1501
( 1735 تشکر در 995 ارسال )
خوب معلومه نمیشه.
منظور من هم این بود که دانلود منجر وقتی به اسکریپت وصل میشه باید سشن فعال که کاربر با اون لوگین کرده شروع به دانلود کنه. در صورتی که دانلود منجر تشخیص نمی ده. البته این مشکل رو با فرستادن سشن به صورت گت حل کردم