Testing your PEAR::DB_DataObejct

Posted by PunNeng, Thu Dec 15 00:29:00 UTC 2005

NOTICE: post นี้ ข้อมูลเก่าครับ ว่ากันง่ายๆ เลย ผมขี้เกียจแก้ละ :)

บางคนที่ไม่เคยลองมาก่อน อ่านแล้วมันคงงงๆ น่าดู มาลองของจริงกันเลยดีกว่า แต่ต้องติดตั้ง PEAR::DB_DataObject เสร็จก่อนนะครับ ที่ผมจะแสดงให้ดู จะเป็นหน้าง่ายๆ หน้านึง มีข้อมูล มีปุ่ม คอยเพิ่ม ปรับปรุง และลบข้อมูลที่ถูกแสดง โดยจะเขียนตาม MVC design pattern(จะเอามาเล่าในคราวหลัง) จะมีโครงสร้างง่ายๆ ดังนี้

root -pearTest folder -pear_dbTest.php -> view -manage.php -db.ini -Controller folder -> Controller -UserMgr.php -Mgr.php -DataObjects folder -> Model -Members.php -> ได้จากการ generate -peartest.ini -> ได้จากการ generate

อันดับแรก คงต้องไปสร้างฐานข้อมูลก่อน

Database name: peartest table: member

จากนั้น เราต้องการตัว class ที่จะทำหน้าที่เป็น Database เสมือน โดยตัว code ที่จะทำการ generate อยู่ที่ php\pear\DB\DataObject\createTables.php แต่ก่อนจะทำการ generate ต้องสร้าง configuration file ก่อน db.ini

  • ผมใช้ XAMPP ครับ ไม่ได้ใช้ AppServ path บางตัวอาจจะไม่คุ้น ตัว folder ที่เป็นที่เก็บ source file จะเป็น peartest ถ้าเป็นใน AppServ ก็ควรจะอยู่ในหน้า root ของเว็บ

แล้วก็ไปเปิดหน้าต่าง dos ขึ้นมา แล้วเข้าไปใน php folder แล้วพิมพ์ว่า

php pear\DB\DataObject\createTables.php ..\htdocs\peartest\db.ini

ผลที่ได้

D:\apachefriends\xampp\php>php 

pear\DB\DataObject\createTables.php ..\htdocs\pea
rtest\db.ini
DB_DataObject_Generator   : 0       : CREATING FOR peartest

DB_DataObject_Generator   : 0       : calling generateDefinitions
DB_DataObject_Generator   : 0       : Generating Definitions file:
DB_DataObject_Generator   : 0       : Writing ini as D:\apachefriends\xampp\htdo
cs\peartest\DataObjects/peartest.ini

DB_DataObject_Generator   : 0       : calling generateClasses
DB_DataObject_Generator   : 0       : writing DataObjects_Member

DB_DataObject_Generator   : 0       : DONE

สิ่งที่เราจะได้หลังจากการ generate คือ Member.php กับ peartest.ini ลองเปิดดูได้

ถัดมา ก็มาดูที่หน้าที่ไว้แสดงหน้าตาง่ายๆ pear_dbTest.php

และ manage.php

และฝั่งที่ไว้ควบคุม ใน Controller folder จุดหมายหลัก อันนี้จะใช้ตัว DB_DataObject ซะที ลองดู code นะว่ามันง่ายขนาดไหน UserMgr.php

สังเกตได้เลยว่าไม่มี sql command สักตัว เย้ๆๆๆ ชอบๆ และตัวที่ไว้ Connect กับ Database Mgr.php

ปล. จริงๆ จะให้ดูแค่ code ตรงส่วนที่ใช้ PEAR::DB_DataObject เขียน แต่เดี๋ยวจะไม่เห็น ไม่ชัดเจน
ปอ. code เยอะจัด ขี้เกียจอธิบาย ไปแกะกันเองเน้อ ไม่เข้าใจตรงไหน โพสถามได้เลย

แก้ไขล่าสุด วันที่ 29 มิถุนายน 2550 เวลา 2.15 น.

Filed Under: General | Tags: db dataobject howto mvc pear php

Comments

Have your say

A name is required. You may use HTML in your comments.




codegent: we're hiring