มาล่ะครับผม บทความร้อนๆ มาส่งแล้วจ้า
หลังจากลองทำดูเกือบสองอาทิตย์ และแล้วเหมือนฟ้าจะเป็นใจ
ด้วยความที่ว่าวันนี้ต้องปิดโปรเจกนี้ล่ะ และมันก็ได้ขึ้นมาซะงั้น
ลั้นล๊าาา ฮ่ะๆ มีความสุข เหอๆ
สิ่งที่คุณควรจะมีและติดตั้งไว้แล้ว มีดังนี้
ติดตั้งเจ้าตัว PHP และ JAVA Bridge จากบทความก่อนหน้านี้ซะก่อนนะ
และอย่าลืม ดูที่ไฟล์ php.ini นะครับ ในส่วนของด้านล่างนี้
-----------------------------------------------------
java.library.path="C:\php\ext\lib"
-----------------------------------------------------
ซึ่งจะเป็นที่เก็บ lib ของ iReport นะครับ
ที่สำคัญปิด Service ของ Apache ซะก่อนนะครับ
สร้างห้อง ชื่อว่า lib ใน PHP จะเป็นแบบนี้ C:\PHP\ext\lib
โหลด iReport-3.0.0.zip มาไว้ในเครื่อง และเอา lib ในนั้นทั้งหมด
วางไว้ในห้องที่พึ่งสร้างคือ C:\PHP\ext\lib
ใช้ iReport มาแล้วก็วาดๆๆ จนได้ไฟล์ .jrxml ขึ้้นมาซักไฟล์นะ
แล้วนำไปวางที่ www นะครับ
ตรวจสอบว่ามีไฟล์ mysql-connector-java-5.1.6-bin.jar
ในห้อง C:\PHP\lib\ext หรือยัง ถ้ายังก็โหลดมาไว้ เช่น
นำ mysql-connector-java-5.1.6-bin.jar
จาก mysql-connector-java-5.1.6.tar.gz
วางไว้ใน C:\PHP\ext\lib
(กรณีนี้คือติดต่อ กับ mySQL)
สร้างไฟล์ขึ้นมาเพื่อต่อฐานข้อมูล
ลองดูโค๊ดจาก class JdbcConnector ในลิงค์ด้านล่างนะครับ
http://charly-clairmont.developpez.com/tutoriels/php-jasper-reports/
แนะนำให้ comment code ในส่วนของ method main นะครับ
และส่วนของบรรทัดแรก comment code ที่เป็นการประกาศ package
จากนั้น compile code จะได้ JdbcConnector.class มาหนึ่งไฟล์
นำไปวางไว้ที่ C:\PHP\ext\lib
สร้างไฟล์ PHP ในหัวข้่อ "PHP jasper report Library" จากลิงค์
http://zeronine.org/lab/index.php/Using_Jasper_report_with_PHP
$java_locale->setDefault($java_locale->KOREAN); เปลี่ยนเป็น
$java_locale->setDefault($java_locale->ENGLISH);
สร้างไฟล์สำหรับทดสอบ ในหัวข้อ "Test loader" จากลิงค์เดียวกัน
define('REPORT_COMPILE', false); เปลี่ยนเป็น
define('REPORT_COMPILE', true);
$jasperLib = "C:\PHP\ext\lib"; ให้ระบุไปยังที่ๆ เรานำ lib iReport มาไว้
$reportPath = "C:\Appserv\www"; ให้ระบุไปยังที่ๆ เก็บไฟล์ .jrxml
เปลี่ยนรูปแบบการรับตัวแปร จาก
$_REQUEST['report'] เป็น $report
$_REQUEST['type'] เป็น $exportType
ทั้งนี้อย่าลืมใส่ค่าตัวแปรด้วย
อันนี้คงจะพอเข้าใจและประยุกต์กันได้
จึงไม่ขออธิบายนะครับ
No comments:
Post a Comment