نمایش فایل PDF در php.

it5

Member
آیا میشه در localhost با یک لینک ساده در یک صفحه php یک فایل pdf را نمایش داد؟

کاملش اینه که فرض کنید یک صفحه داریم که از 2 فریم تشکیل شده
- یک فرم سمت راست که حالت منو داره و یک فریم سمت چپ یا mainframeکه حالت صفحه اصلی یا همون صفحه نمایش
- من میخوام وقتی روی منوی سمت راست که یک لینک به فایل pdf است کلیک کردم اون فایلو برای من در صفحه اصلی یا همون mainframe باز کنه(که همون تعریف خاصیت target است که اسم فریم اصلی را میدهیم) ولی باز نمیشه!!
یعنی باز میشه ولی خودش واسه خودش فایل pdf باز میکنه نه در اون صفحه یا همون فریم که من میخوام !!!
چرا؟
 

peyman1987

Member
دوست عزيز php براي کار با فايلهاي pdf توابع زيادي داره ولي همه اونها بدرد ايجاد و يا ويرايش فايلهاي pdf ميخورن. من که تا حالا تابعي براي نمايش فايل pdf نديدم. در ضمن شما وقتي خود فايل pdf رو به مرورگر کاربر بفرستين خود کاربر ميتونه انتخاب کنه که ميخواد توي مرورگر بازش کنه يا ميخواد روي هارد ذخيره‌ش کنه. فکر نميکنم بتوني مجبورش کني که توي مرورگر بازش کنه چون اين بستگي به تنظيمات مرورگر کاربر داره. اين نظر من بود حالا شايد بقيه دوستان بتونن بيشتر کمک کنن.
 

.:: Ali ::.

Member
این سوال فکر نمی کنم به خاطر لوکال بودنش به php مربوط باشه ! اما مرورگر شما چیه ؟ اگه یه فایل pdf رو به درون مرورگر بکشید بازم این اتفاق می افته ؟ اگه آره مربوط به تنظیمات پلاگین adobe reader هستش .

Edit >> Prefrences >> Intenet >> Display PDF in browser رو تیک بزنید .
موفق باشید .
 

jhoseini

Member
نه اینطور نیست، ببینید:
 

پیوست ها

  • frame.zip
    252 بایت · بازدیدها: 13
آخرین ویرایش:

my friend

Member
میشه با تابع fread یه فایل pdf رو بخونی.
البته قبلش باید هدر رو تنظیم کنی تا دانلود نشه...
 

it5

Member
jhoseini دقیقاً مثال شما ولی وقتی روی link1 که یک pdf است کلیک میکنیم به جای اینکه در فریم باز شود به طور مجزا و جدا برای خودش باز میشه
آیا راهی هست که بشه مجبورش کرد که در فریم باز بشه؟
 

my friend

Member
اینو تست نکردم ، اما باید کار کنه... ( ادوبی ریدر رو سیستمم نصب نیست فعلا... )

PHP:
header('Content-type: text/pdf');
readfile('patch/file.pdf');
 
آخرین ویرایش:

my friend

Member
اینرو تو یه فایل PHP بزار:

PHP:
<?PHP
header('Content-type: text/pdf'); 
readfile('patch/file.pdf');
?>
به جای patch/file.pdf آدرس فایل PDF رو بزار.
( مطمئن نیستم که درست کار کنه... )
 
آخرین ویرایش:

alireza82

Well-Known Member
سلام
PHP:
 $file = "pdf_files/file1.pdf";
 $len = filesize($file);
 header("Cache-Control: no-store, no-cache, must-revalidate"); 
 header("Cache-Control: post-check=0, pre-check=0", false);
 header("Pragma: no-cache"); 
 header("Content-type: application/pdf");
 header("Content-Length: $len");
 header("Content-Disposition: inline; filename=file1.pdf");
 header("Content-Transfer-Encoding: binary\n");
 readfile($file);

موفق باشید.
 

my friend

Member
این کد هدر ها رو تنظیم کرده و کاملتره... بهتره از این استفاده کنید.
 

it5

Member
نه
این کد وقتی اجرا میشه پیغام میده که باید صفحه php که کد داخل اون هست دانلود بشه!!
 

alireza82

Well-Known Member
سلام
والا همونطور که تو عکس مسبینی برا من درست کار میکنه و فایل pdf رو تو همون صفحه باز میکنه!
من بیشتر از این چیزی به ذهنم نمیرسه! امیدوارم کس دیگه ای از بچه ها ایده بهتری داشته باشه! کمکتون کنه!
موفق باشید
 

پیوست ها

  • pdf.JPG
    pdf.JPG
    98 کیلوبایت · بازدیدها: 6

it5

Member
alireza82 شما دقیقاً همین کد ها رو ذاشتی توی یک صفحه php و اجرا شد؟یعنی همون صفحه pd.php
یعنی هیچ تگ html یا کد php دیگه ای نداشت؟
اگر داره میشه کل صفحه رو اینجا بزاری؟
 

alireza82

Well-Known Member
سلام
نه من دقیقا همون کد ها رو گذاشتم! فقط آدرس فایل رو ، آدرس فایل خودم دادم
هیچ فرقس با اون کدی که به شما دادم نداره! از هیچ کد html یا چیز دیگه ای بیش از اون چیزی که به شما گفتم استفاده نکردم.!!
البته یه چیز هست خیلی عوامل رو فایل های pdf تاثیر میزارم مثلا dap اگر تنظیم دانلود اتوماتیکش فعال باشه به محض دیدن .pdf آخر آدرس شروع به دانلود میکنه! اگر آکروبات ریدر نصب نباشه ویندوز به صورت خودکار شروع به دانلود میکنه!
بعضی از پلاگشن ها ها هم حتی تاثیر دارن! برا همین کار یکم سخته!
موفق باشی
 

جدیدترین ارسال ها

بالا