الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اضافة تقرير pdf لموقع php

بدأه rohaili في 14 أبريل 2013 · 10 رد · 2,215 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

 

كيف اضيف تقرير pdf لموقع php ويكون التقرير مشابه للتالي

 

وزارة                                                      بسم الله الرحمن الرحيم                                        Ministray

مدرسة                                                                

                                       

 

 

السلام عليكم

الرقم                                                                    الاسم                                                           المدرسة

 

 

 

 

 

                                                                                                                           اسم المعلم                                                                                                          

 

 

 

 

 

 

 

مع العلم اني اطلعت على تقارير tcpdf ولم اعرف التعامل معها

 

وكذلك برنامج php report maker

تم تعديل هذه المشاركة بواسطة rohaili في 14 أبريل 2013 في 22:55

300_130.gif

#2

السلام عليكم

 

استخدم الـ mPDF فهو يقوم بتحويل أكواد الـ HTML إلى ملف PDF .

هذا الرابط به دليل المستخدم لكيفية التعامل مع هذه الفئة .

 

بعد تنزيل الملف وفك الضغط عنه ستقوم بتضمين الملف mpdf.php وإنشاء كائن من الفئة ثم إستخدام الدالة WriteHTML لإنشاء ملف الـ PDF من كود الـ HTML الممر إليها ثم الدالة Output لحفظ ملف الـ PDF الناتج كالتالي :

<?php
include('MPDF56/mpdf.php');
$mpdf=new mPDF();
$mpdf->WriteHTML('<h1 style="color: #00F; text-align: center;">ArabTeam2000</h1>');
$mpdf->Output();
// تمت بحمد الله
?>

ولمزيد من الأمثلة ستقوم بالدخول على مجلد examples من خلال المتصفح لمشاهدة الأمثلة والتطبيق عليها .

 

دمتم بخير

1

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#3

وعليكم السلام ورحمة الله وبركاته


 


جزاك الله خيرا


 


جربت المثال وهو يعمل بشكل جيد


 


والسؤال الآن


 


كيف احدد حجم الصفحة مثلا a4 أو a3 أو letter


 


وبالنسبة لورقة a4


 


فكيف احدد هوامش بمقدار 1 سم من كل جهة


 


وكيف ادرج جدول به ثلاث اعمدة بحيث يكون كل عمود بعرض 5 سم


 


وجزاك الله خيرا


300_130.gif

#4

وعليكم السلام ورحمة الله وبركاته

 

أدخل على مجلد examples ستجد أمثلة على كل ما تريد عند الضغط على PDF أمام المثال سيتم تحميل المثال لتراه وعند الضغط على php سيتم تحميل الكود الخاص بتوليد هذا الملف .

 

- بالنسبة للتنسيق وعمل الجداول والإزاحات وخلافه فهو يعتمد على مدى معرفتك باللغة الهيكلية HTML ولغة التنسيق CSS , فما عليك إلا كتابة صفحة HTML عادية ثم تحويلها من خلال الفئة .

 

دمت بخير

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#5

جزاك الله خيرا


300_130.gif

#6

السلام عليكم

 

المكتبة ممتازة لكنها لا تقبل اكواد php

 

فما الحل

 

هل يوجد مكتبة مثلها تقبل اكواد php

 

$html = '<td width="16.5%">المدرسة</td>
                                    <td ><select name="sch" disabled="">
                                            <?php
                                            session_start();
                                            $_SESSION['selected'] = $_SESSION['sch'];
                                            include 'sch_list.php';
                                            ?>
                                        </select></td>';

تم تعديل هذه المشاركة بواسطة rohaili في 23 أبريل 2013 في 00:31

300_130.gif

#7

السلام عليكم

 

لماذا التفكير مباشراً في تغيير المكتبة ؟

 

يمكن لك تنفيذ أكواد php وجلب المحتوى كـ HTML فقط بعده طرق منها :

-إستخدام مكتبة cURL .

-إستخدام لغة javaScript لإعادة إرسال محتوى الصفحة الناتجة لإعادة معالجة الملف وتحويله لملف php .

-إستخدام دوال مكتبة الـ OutControl من خلال تضمين الملفات التي تحتوي على أكواد html و php أو إستخدام تعليمة eval لتنفيذ الكود مباشراً داخل نفس الصفحة .

 

*ملاحظة : كودك السابق به تداخل لعلامات التنصيص سيتسبب في ظهور أخطاء فإما أن تستخدم علامة التنصيص المزدوجة داخلياً أو تقوم بعمل عملية تجاهل لعلامة الإقتباس المفردة من خلال العلامة \

 

* سأضع مثال لكيفية إستخدام أخر طريقة لأني أراها الأفضل :

<?php
$html = '<h1><?php echo "Ahmed"; ?></h1>';
ob_start();
eval("?>".$html);
$html = ob_get_contents();
ob_end_clean();
?>
<textarea><?php echo $html; ?></textarea>

* ملاحظة : يمكن إستخدام هذه الطريقة لتخفيف حمل الضغط على الموقع وكثرة تنفيذ الإستعلامات على الموقع وبالتالي تسريع تحميل الموقع وتستخدم تلك الطرق في المواقع التي يكون عليها ضغط كبير من الزوار أو تريد سرعة أعلى لتصفح موقعك .

 

دمتم في أمان الله

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#8

جزاك الله خيرا


 


جربت المثال السابق وهو يعمل بشكل ممتاز


 


هل يمكن ان تعطيني مثال على استخدام outcontrol


 


وجزاك الله خيرا


300_130.gif

#9

السلام عليكم

 

أخي العزيز المثال السابق الذي ذكرته هو تطبيق على إستخدام دوال الـ outControl , ولكن إن كنت تقصد مثال على تنفيذ ملفات php خارجية فما سوف تقوم به ما هو إلا عملية تضمين لملف الـ php بين دوال الـ outControl .

 

فلنفرض أن الملف المحتوي على أكواد php باسم out وبه أكواد php وكمثال التالي :

<h1><?php echo "Ahmed"; ?></h1>

سيتم تضمين هذا الملف بعد تشغيل الـ outControl وجلب الحتوى المطبوع وتخزينه في المتغير $html ثم طباعة الناتج كالتالي :

<?php
ob_start();
include('out.php');
$html = ob_get_contents();
ob_end_clean();
?>
<textarea><?php echo $html; ?></textarea>

 

دمتم في أمان الله

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#10

جزاك الله خيرا

 

هذه الطريقة افضل من السابقة 100% حيث حلت المشاكل التي ظهرت سابقا

 

لكن ظهرت مشكلة بسيطة لم تكن موجودة سابقا وهي ان الاسم ظهرت حروفه مفرقة

 

مثال خالد يظهر خ ا ل د

 

$mpdf=new mPDF('ar','A4','','',19,19,19,19,9,9); 
ob_start();
include('../../teacher_trans_pdf.php');
$html = ob_get_contents();
ob_end_clean();

$mpdf->SetDirectionality('rtl');

$mpdf->SetDisplayMode('fullpage');


$mpdf->WriteHTML($html);

$mpdf->Output();

 

فما الحل وجزاك الله خيرا

300_130.gif

#11

أخرجت النص من داخل مربع النص فحلت المشكلة


 


وجزاك الله خيرا


300_130.gif

مواضيع مشابهة