Lập trình web chuyên sâu với CMS Joomla - Bài 3: Bước đầu làm quen Component

pdf 22 trang vanle 3030
Bạn đang xem 20 trang mẫu của tài liệu "Lập trình web chuyên sâu với CMS Joomla - Bài 3: Bước đầu làm quen Component", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdflap_trinh_web_chuyen_sau_voi_cms_joomla_bai_3_buoc_dau_lam_q.pdf

Nội dung text: Lập trình web chuyên sâu với CMS Joomla - Bài 3: Bước đầu làm quen Component

  1. TRUNG TÂM TIN HỌC ĐẠI HỌC KHOA HỌC TỰ NHIÊN-TP.HCM LẬP TRÌNH WEB CHUYÊN SÂU VỚI CMS JOOMLA 1
  2. TRUNG TÂM TIN HỌC ĐẠI HỌC KHOA HỌC TỰ NHIÊN-TP.HCM Bài 3: Bước đầu làm quen Component 1.1. GiGiớớii thithiệệuu 2.2. TTạạoo ccoommponentponent đơđơnn gigiảảnn 3.3. TrTruyuy xuxuấấtt ccơơ ssởở ddữữ liliệệuu 4.4. FrFrontont EEndnd CoCommpponentonent 2
  3. Bài 3: Bước đầu làm quen Component 11 GiGiớớii tthihiệệuu § Component làmộtloạithànhphầnmở rộngtrongJoomla. § Component làtậphợpcáctrangweb có liênquanvớinhau. Mỗichứcnăngtrong website đềuliênquan đếnmộtcomponent nào đó § Có2 loạicomponent: – Component ở Front End – Component ở Back End 3
  4. Bài 3: Bước đầu làm quen Component 22 TTạạoo ccoommppoonneenntt đơđơnn gigiảảnn § Front End Component – Vídụ: com_helloxuấtracâu“chàocácbạn” hello.php Chàocácbạn Minhhọa 4
  5. Bài 3: Bước đầu làm quen Component 22 TTạạoo ccoommppoonneenntt đơđơnn gigiảảnn § Front End Component – Cúpháptruyxuấtcomponent từ url: com Vídụ: truyxuấtcom_hellotừlocalhost Minhhọa 5
  6. Bài 3: Bước đầu làm quen Component 22 TTạạoo ccoommppoonneenntt đơđơnn gigiảảnn § Thựchành – Tạocom_hello 6
  7. Bài 3: Bước đầu làm quen Component 33 TTrruyuy xuxuấấtt CCơơ ssởở ddữữ liliệệuu – Để truyxuấtcơsởdữliệutrongJoomla, ta cầnthựchiệncácbướcsau: •Bước1: Thamchiếubiếnkếtnối $db =& JFactory::getDBO(); •Bước2: Tạochuỗitruyvấn $query = "SELECT * FROM #__KHACH_HANG" •Bước3: Truyềnlệnhtruyvấnchobiếnkếtnối $db->setQuery($query); •Bước4: Thựchiệnlệnhtruyvấnvànhậnkếtquả trả về 7
  8. Bài 3: Bước đầu làm quen Component 33 TTrruyuy xuxuấấtt CCơơ ssởở ddữữ liliệệuu § ThựchiệnlệnhSQL lấydữliệu: dùngcác phươngthứcsau: – loadResult( ) : •Ý nghĩa: truyvấnlấy1 giátrị. •Kếtquả trả về: là1 chuỗi Vídụ: tìmtênkháchhàngkhibiếtmãkháchhàng $query = "SELECT Ten_khach_hangFROM #__KHACH_HANG WHERE Mkh=$mkh"; $db =& JFactory::getDBO(); $db->setQuery($query); $ten_khach_hang= $db->loadResult(); 8
  9. Bài 3: Bước đầu làm quen Component 33 TTrruyuy xuxuấấtt CCơơ ssởở ddữữ liliệệuu § ThựchiệnlệnhSQL lấydữliệu: dùngcác phươngthứcsau: – loadObject( ) : •Ý nghĩa: truyvấnlấy1 dòngtrongbảng. •Kếtquả trả về: là1 đốitượngthuộcclass stdClass Vídụ: tìmkháchhàngkhibiếtmãkháchhàng $query = ''SELECT * FROM #__KHACH_HANG WHERE Mkh=$mkh''; $db =& JFactory::getDBO(); $db->setQuery($query); print_r($db->loadObject()); 9
  10. Bài 3: Bước đầu làm quen Component 33 TTrruyuy xuxuấấtt CCơơ ssởở ddữữ liliệệuu § ThựchiệnlệnhSQL lấydữliệu: dùngcác phươngthứcsau: – loadObjectList( ) : •Ý nghĩa: truyvấnlấynhiềudòng. •Kếtquả trả về: là1 mảngcác đốitượng Vídụ: lấydanhsáchkháchhàng $query = “SELECT * FROM '#__KHACH_HANG”; $db =& JFactory::getDBO(); $db->setQuery($query); print_r($db->loadObjectList()); 10
  11. Bài 3: Bước đầu làm quen Component 33 TTrruyuy xuxuấấtt ccơơ ssởở ddữữ liliệệuu § ThựchiệnlệnhSQL cậpnhậtdữliệu, ta dùngphươngthứcquery: •Ý nghĩa: thựchiện1 lệnhSQL bấtkỳ (~mysql_query). •Kếtquả trả về: true hoặcfalse Vídụ: tăng đơngiásách10% $query = “UPDATE #__SACH SET DON_GIA=DON_GIA*1.1”; $db =& JFactory::getDBO(); $db->setQuery($query); $db->query(); 11
  12. Bài 3: Bước đầu làm quen Component 44 FFrronontt EEndnd CCoommponponeentnt § Cấutrúc: – Front end component gồm: •Thư mục com_tencom nằm ở joomla/components •Trongthư mụccom_tencom, cóítnhất1 file là ten_component.php, làfile xử lýchínhcủa component Cúpháptruyxuấtcomponent từ url: ncom 12
  13. Bài 3: Bước đầu làm quen Component 44 FFrronontt EEndnd CCoommponponeentnt § Cácbướcthựchiện: – Bước1: Khởitạocomponent: •Tạocấutrúccomponent •Giảithích: – tencom.html.php: file nàychứa1 class cungcấpcác phươngthứchiểnthị giaodiện – tencom.php: làfile xử lýchínhcủacomponent. Trongfile nàysẽgọicácphươngthứchiểnthị giaodiệnbênfile tencom.html.php 13
  14. Bài 3: Bước đầu làm quen Component 44 FFrronontt EEndnd CCoommponponeentnt § Cácbướcthựchiện: – Bước2: Khởitạocácfile tencom.phpvà tencom.html.php. •File tencom.phpgồmcácxửlýchínhsau: – Thamchiếufile xử lýgiaodiện – Lấygiátrị củacácthamsốtừurl – Xétcácthamsốđể gọicácxửlýphùhợp 14
  15. Bài 3: Bước đầu làm quen Component 15
  16. Bài 3: Bước đầu làm quen Component 44 FFrronontt EEndnd CCoommponponeentnt § Cácbướcthựchiện: – Bước2: Khởitạocácfile tencom.phpvà tencom.html.php. •File tencom.html.phplà1 class cungcấpcác phươngthức để hiểnthị giaodiện ứngvớicác chứcnăngcủacomponent 16
  17. Bài 3: Bước đầu làm quen Component tencom.html.php Minhhọa 17
  18. Bài 3: Bước đầu làm quen Component 44 FFrronontt EEndnd CCoommponponeentnt § Cácbướcthựchiện: – Bước3: Viếtcode chocácfile tencom.phpvà tencom.html.php. Vídụ: Hiểnthị danhsáchkháchhàng 18
  19. Bài 3: Bước đầu làm quen Component khach_hang.php setQuery($lenhsql); $data = $db->loadObjectList(); HTML_KhachHang::Hien_thi_danh_sach_khach_hang($data); } ?> 19
  20. Bài 3: Bước đầu làm quen Component khach_hang.html.php Minhhọa 20
  21. Bài 3: Bước đầu làm quen Component 44 FFrronontt EEndnd CCoommponponeentnt § Thựchành – Tạocom_khach_hangliệtkêdanhsách kháchhàng 21
  22. Bài 3: Bước đầu làm quen Component 22