/
  • اپلود فایل های بزرگ در دیتابیس

  • صفحه‌ها (2):
  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی اپلود فایل های بزرگ در دیتابیس
    نویسنده پیام
    farhad.programmer آفلاین
    عضو مهم
    ****

    ارسال‌ها: 291
    تاریخ عضویت: ۱۳۸۸ بهمن ۷
    اعتبار: 1
    تشکرها : 148
    ( 99 تشکر در 67 ارسال )
    ارسال: #1
    اپلود فایل های بزرگ در دیتابیس
    با سلام

    من برای امنیت بیشتر فایل هام که تعداد کمی هستند می خواهم که ان ها رو توی دیتابیس ذخیره کنم نوع فیلد هم LONGBLOB انتخاب می کنم ولی فایل های بیشتر از 1 مگابایت آپلود نمیشن چی کنم که این مشکل حل بشه و اگه حل نمیشه برا آپلود امن چی کنم چون می خواهم توی سایتی که مینویسم بعضی از کاربرا فایل های که من براشون آپلود کردم رو ببینن. پس باید امن باشه، راه دیگه ای هست؟
    ۱۳۸۹ ارديبهشت ۲۲ ۱۲:۵۹ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6198 تشکر در 3439 ارسال )
    ارسال: #2
    RE: اپلود فایل های بزرگ در دیتابیس
    آپلود عکس توی دیتابیس به نظر من زیاد خوب نیست مگر اینکه واقعا نیاز باشه
    واسه این کار هم می تونید فایلهاتون رو خارج از دسترسی وب بزارید
    ۱۳۸۹ ارديبهشت ۲۲ ۰۱:۳۰ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : farhad.programmer
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #3
    RE: اپلود فایل های بزرگ در دیتابیس
    اگه برای جلوگیری از حمله هکر ها باشه چی .جلوگیری از دسترسی هکر ها به فایل ها .(مثلا در صورت هک شدن سیستم )
    __________________________________________________________________________
    ۱۳۸۹ ارديبهشت ۲۲ ۰۱:۵۱ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    farhad.programmer آفلاین
    عضو مهم
    ****

    ارسال‌ها: 291
    تاریخ عضویت: ۱۳۸۸ بهمن ۷
    اعتبار: 1
    تشکرها : 148
    ( 99 تشکر در 67 ارسال )
    ارسال: #4
    RE: اپلود فایل های بزرگ در دیتابیس
    سلام وحید جان من عکس نمیخواهم توی دیتابیس آپلود کنم فقط فایل های pdf چی کار کنم؟
    البته آپلود میشه ولی حجم بالای 1 مگابایت نمیشه
    (آخرین ویرایش در این ارسال: ۱۳۸۹ ارديبهشت ۲۲ ۰۲:۱۳ عصر، توسط farhad.programmer.)
    ۱۳۸۹ ارديبهشت ۲۲ ۰۲:۰۷ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    mojtabajml آفلاین
    مجتبی جمالی
    ***

    ارسال‌ها: 134
    تاریخ عضویت: ۱۳۸۸ آذر ۳۰
    اعتبار: 2
    تشکرها : 20
    ( 119 تشکر در 72 ارسال )
    ارسال: #5
    RE: اپلود فایل های بزرگ در دیتابیس
    نقل قول: اگه برای جلوگیری از حمله هکر ها باشه چی .جلوگیری از دسترسی هکر ها به فایل ها .(مثلا در صورت هک شدن سیستم )

    بهتره فایلهاتون را بیرون از فولدر ریشه قرار بدید، ذخیره فایلهای با حجم زیاد توی دیتابیس منطقی نیست.
    اگه سرورتون امن باشه مشکلی پیش نمیاد یه کم هزینه بیشتر میشه!
    (آخرین ویرایش در این ارسال: ۱۳۸۹ ارديبهشت ۲۲ ۰۲:۳۸ عصر، توسط mojtabajml.)
    ۱۳۸۹ ارديبهشت ۲۲ ۰۲:۳۷ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    farhad.programmer آفلاین
    عضو مهم
    ****

    ارسال‌ها: 291
    تاریخ عضویت: ۱۳۸۸ بهمن ۷
    اعتبار: 1
    تشکرها : 148
    ( 99 تشکر در 67 ارسال )
    ارسال: #6
    RE: اپلود فایل های بزرگ در دیتابیس
    (۱۳۸۹ ارديبهشت ۲۲ ۰۲:۳۷ عصر)mojtabajml نوشته شده توسط:  
    نقل قول: اگه برای جلوگیری از حمله هکر ها باشه چی .جلوگیری از دسترسی هکر ها به فایل ها .(مثلا در صورت هک شدن سیستم )

    بهتره فایلهاتون را بیرون از فولدر ریشه قرار بدید، ذخیره فایلهای با حجم زیاد توی دیتابیس منطقی نیست.
    اگه سرورتون امن باشه مشکلی پیش نمیاد یه کم هزینه بیشتر میشه!

    سلام

    بر فرض که ما فایل هارو بیرون ریشه اصلی گذاشتیم حالا می خواهیم کاری کنیم کاربرا از توی پنل خودشون بعضی فایل هارو بتونن دانلود کنن اون وقت باید چه کرد؟
    ۱۳۸۹ ارديبهشت ۲۲ ۰۲:۴۳ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    mojtabajml آفلاین
    مجتبی جمالی
    ***

    ارسال‌ها: 134
    تاریخ عضویت: ۱۳۸۸ آذر ۳۰
    اعتبار: 2
    تشکرها : 20
    ( 119 تشکر در 72 ارسال )
    ارسال: #7
    RE: اپلود فایل های بزرگ در دیتابیس
    کد:
    $fileToOpen = SITE_UPLOAD_PATH . $filename;
                $handle = fopen ( $fileToOpen, "rb" );
                $contents = fread ( $handle, filesize ( $fileToOpen ) );
                fclose ( $handle );
                header ( "Pragma: public" );
                header ( "Expires: 0" );
                header ( 'Cache-Control: no-store, no-cache, must-revalidate' );
                header ( 'Cache-Control: pre-check=0, post-check=0, max-age=0', false );
                header ( "Content-length: " . filesize ( $fileToOpen ) );
                header ( "Content-Disposition: attachment; filename=\"" . jdate ( 'l d F Y ', time() ) . $this->filename . "\"" );
                header ( 'Content-Transfer-Encoding: binary' );
                echo $contents;
    (آخرین ویرایش در این ارسال: ۱۳۸۹ ارديبهشت ۲۲ ۰۳:۱۰ عصر، توسط mojtabajml.)
    ۱۳۸۹ ارديبهشت ۲۲ ۰۳:۰۵ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : php mmmmm
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #8
    RE: اپلود فایل های بزرگ در دیتابیس
    بجای توابع fopen, fread,fclose نیز می تونی از تابع file_get_content استفاده کنی

    اسم فایل رو میگیره و محتواش رو برمی گردونه .
    __________________________________________________________________________
    ۱۳۸۹ ارديبهشت ۲۳ ۱۲:۳۳ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    scooter آفلاین
    عضو مهم
    ****

    ارسال‌ها: 391
    تاریخ عضویت: ۱۳۸۷ دي ۳
    اعتبار: 3
    تشکرها : 239
    ( 54 تشکر در 42 ارسال )
    ارسال: #9
    RE: اپلود فایل های بزرگ در دیتابیس
    سلام ببخشید این خارج از دسترسی وب منظور کجاست
    بیرون public_html???
    اگه جواب بله است ، چه جوری میشه بهش آدرس داد؟
    __________________________________________________________________________
    welcome to the club
    ۱۳۸۹ ارديبهشت ۲۸ ۰۴:۱۹ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    vejmad آفلاین
    عضو ارشد
    *****

    ارسال‌ها: 1,460
    تاریخ عضویت: ۱۳۸۹ ارديبهشت ۲۱
    اعتبار: 23
    تشکرها : 484
    ( 1247 تشکر در 611 ارسال )
    ارسال: #10
    RE: اپلود فایل های بزرگ در دیتابیس
    بله بیرون بیرون public_html.
    مثلا شما یک فایل PHP داخل public_html میذارید که کاربران توسط اون فایلهای خارج از public_html رو دانلود میکنن. چون فایل PHP شما یه برنامه هست که روی سیستم سرور بصورت لوکال قرار داره و دسترسی اون به public_html محدود نمیشه اما کاربران وب تنها میتونن به فایلهای درون public_html بصورت مستقیم دسترسی پیدا کنن (از طریق آپاچی درواقع).
    مثلا فرض کنید شما یک فایل download.php مستقیما در public_html دارید.
    این فایل میتونه یک فایل واقع در یک سطح بالاتر از این دایرکتوری رو مثلا با چنین آدرسی بخونه:
    کد:
    ../somefile.zip
    البته من دقیقا یادم نیست و بالبداهه گفتم (شاید نحوهء دیگری آدرس دهی بخواد).
    بهرحال اصولش همینه.
    حتی میشه فایلهایی خارج از public_html رو به اینصورت در PHP اینکلود کرد.
    __________________________________________________________________________
    God knows
    (آخرین ویرایش در این ارسال: ۱۳۸۹ ارديبهشت ۲۸ ۰۹:۲۲ صبح، توسط vejmad.)
    ۱۳۸۹ ارديبهشت ۲۸ ۰۹:۱۸ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : molana farhad.programmer
    « قدیمی تر | تازه‌ تر »

  • صفحه‌ها (2):
  • ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS