ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Drupal Framework
Sinh vi¨ºn : Nguy?n V?n Xanh
MSSV: 1011440
N?i Dung Tr¨¬nh B¨¤y
? 1. Gi?i Thi?u Drupal Framework
? 2. H? Th?ng T?p Tin V¨¤ Th? M?c Trong Drupal
? 3. Ki?n Tr¨²c Drupal
? 4. C¨¢c Kh¨¢i Ni?m C? B?n
? 5. X?y D?ng Giao Di?n V¨¤ K?t N?i C? S? D? Li?u
? 6. C¨¢ch Vi?t M?t Module
Gi?i Thi?u Drupal Framework
? Drupal l¨¤ ph?n m?m ph¨¢t tri?n theo h??ng m? ¨C ?un, m?t h?
th?ng qu?n tr? mi?n ph¨ª v¨¤ m? ngu?n m?
? Drupal cho ph¨¦p ng??i qu?n tr? h? th?ng t?o v¨¤ t? ch?c d?
li?u, t¨´y ch?nh c¨¢ch tr¨¬nh b¨¤y, t? ??ng h¨®a c¨¢c t¨¢c v? ?i?u
h¨¤nh v¨¤ qu?n l? h? th?ng.
? Drupal ch?y ???c tr¨ºn nhi?u m?i tr??ng kh¨¢c nhau, bao g?m
Windows, Mac OS X, linus, FreeBSD, v¨¤ c¨¢c m?i tr??ng h? tr?
m¨¢y ph?c v? Web Apache( phi¨ºn b?n 1.3+) ho?c IIS( phi¨ºn b?n
4.3.3+).
? Drupal k?t n?i v?i c? s? d? li?u MySQL ho?c PostgreSQL ??
l?u n?i dung v¨¤ c¨¢c thi?t l?p.
H?Th?ngT?pTinV¨¤Th? M?cTrongDrupal
H?Th?ngT?pTinV¨¤Th?M?cTrongDrupal
? Th? m?c includes ch?a th? vi?n c¨¢c h¨¤m th??ng d¨´ng.
? Th? m?c misc l?u tr? c¨¢c bi?u t??ng v¨¤ h¨¬nh ?nh d¨´ng cho
Javascript v¨¤ m?t s? t¨¤i nguy¨ºn kh¨¢c.
? Th? m?c profiles ch?a c¨¢c profile kh¨¢c nhau d¨´ng cho c¨¤i ??t
v¨¤ thi?t l?p Drupal.
H?Th?ngT?pTinV¨¤Th?M?cTrongDrupal
? Th? m?c scripts ch?a c¨¢c t?p l?nh d¨´ng ?? ph?n t¨ªch c¨²
ph¨¢p, d?n d?p m? ngu?n v¨¤ x? l? c¨¢c t¨¢c v? ??c bi?t v?i cron.
Nh?ng t?p l?nh ti?n ¨ªch n¨¤y ???c vi?t b?ng ng?n ng? shell v¨¤
Perl.
? Th? m?c themes ch?a c¨¢c c?ng c? t?o khu?n m?u v¨¤ giao
di?n m?c ??nh cho Drupal.
? Th? m?c sites ch?a c¨¢c thay ??i ??i v?i Drupal d??i d?ng
thi?t l?p, module v¨¤ giao di?n. C¨¢c module ???c th¨ºm v¨¤o s?
n?m trong sites/all/modules. Trong th? m?c sites c¨® th? m?c
???c ??t t¨ºn l¨¤ default ch?a c¨¢c thi?t l?p m?c ??nh cho h?
th?ng Drupal, ???c ghi l?i trong file settings.php.
H?Th?ngT?pTinV¨¤Th?M?cTrongDrupal
? D??i ??y l¨¤ c?u tr¨²c b¨ºn trong th? m?c sites
Ki?n Tr¨²c Drupal
? Ki?n Tr¨²c Module
? C? Ch? Hook
Ki?n Tr¨²c Module
? Module l¨¤ m?t b? g?m m? PHP v¨¤ c¨¢c file h? tr? s? d?ng API
v¨¤ ki?n tr¨²c c?a Drupal t¨ªch h?p c¨¢c th¨¤nh ph?n m?i v¨¤o trong
framework c?a Drupal.
? C? ch? module c?a Drupal ???c thi?t k? ?? cung c?p m?t
c¨¢ch th?c ??ng nh?t gi¨²p ng??i ph¨¢t tri?n m? r?ng kh? n?ng
c?a h? th?ng.
? ?? m?t module s? d?ng ???c th¨¬ n¨® ph?i ???c b?t b?i ng??i
qu?n tr? trang web. Drupal s? chuy?n c¨¢c y¨ºu c?u c?a ng??i
d¨´ng ??n module ?¨® n?u c?n thi?t.
C? Ch? Hook
? C? ch? hook l¨¤ m?t kh¨¢i ni?m r?t quan tr?ng trong vi?c ph¨¢t
tri?n module cho Drupal. C? ch? n¨¤y gi¨²p Drupal bi?t ???c
ph?i g?i module n¨¤o khi x? l? c¨¢c y¨ºu c?u kh¨¢c nhau t? ng??i
d¨´ng
? M?t y¨ºu c?u c?a ng??i d¨´ng s? ???c Drupal x? l? qua m?t
chu?i c¨¢c b??c kh¨¢c nhau. ??u ti¨ºn, ph?n l?i kh?i ??ng ?ng
d?ng, ??nh ngh?a c¨¢c c¨¢c bi?n v¨¤ c¨¢c h¨¤m th??ng d¨´ng. Ti?p
theo, h? th?ng s? n?p c¨¢c th? vi?n, giao di?n v¨¤ module c?n
thi?t v¨¤ ¨¢nh x? URI ???c y¨ºu c?u t?i ?o?n m? ?i?u khi?n
t??ng ?ng. Sau ?¨®, d? li?u s? ???c ??nh d?ng v¨¤ ??t v¨¤o giao
di?n ?? ??a ra tr¨¬nh duy?t c?a ng??i d¨´ng.
C? Ch? Hook
? Trong m?t th?i ?i?m x¨¢c ??nh tr??c, Drupal th?c thi c¨¢c hook.
H? th?ng s? d?a v¨¤o hook ?? ki?m tra m?t s? ho?c t?t c? c¨¢c
module ?ang ???c b?t, t¨¬m ki?m c¨¢c h¨¤m theo khu?n m?u
???c ??nh ngh?a tr??c. M?t s? m?u li¨ºn k?t qu¨¢ tr¨¬nh n¨¤y v?i
ph??ng th?c "callback" th??ng ???c s? d?ng trong m? h¨¬nh
x? l? s? ki?n. C? ch? hook c?ng t??ng t? nh? th?.
C¨¢c Kh¨¢i Ni?m C? B?n:
? Node
? User
? Block
? Menu
? Form
Node
? Node la? m?t m?u n?i dung d?ng v?n b?n t?ng qu¨¢t trong
Drupal ???c g?i b?ng thu?t ng?. M?t node, hi?u theo c¨¢ch
c?a Drupal, l¨¤ m?t ??i t??ng t?ng qu¨¢t d¨´ng ?? bi?u di?n n?i
dung d?ng v?n b?n. Tuy nhi¨ºn, v?i kh? n?ng t¨´y bi?n c?a
Drupal, ng??i ph¨¢t tri?n c¨® th? t?o ra c¨¢c module m? r?ng
kh? n?ng tr¨¬nh b¨¤y c?a node ?? c¨® th? hi?n th? c¨¢c n?i dung
ngo¨¤i v?n b?n thu?n t¨²y, nh? h¨¬nh ?nh, video hay c¨¢c file ?m
thanh.
User
? M?t ki?u ??i t??ng quan tr?ng kh¨¢c trong Drupal l¨¤ ??i
t??ng User. Gi?ng nh? comment v¨¤ node, d? li?u ng??i d¨´ng
c?ng ???c l?u tr? trong c? s? d? li?u v¨¤ ???c l?y ra trong qu¨¢
tr¨¬nh x? l?. Th?ng tin v? ng??i d¨´ng ???c s? d?ng trong vi?c
x¨¢c th?c, ??nh ngh?a c¨¢c thi?t l?p c¨¢ nh?n v¨¤ quy?n h?n, v¨¤ t?o
c¨¢c b?n log.
Block
? M?t kh¨¢i ni?m quan tr?ng trong Drupal l¨¤ Kh?i (block). N?u
m?t node ???c s? d?ng ?? l?u tr? v¨¤ tr¨¬nh b¨¤y c¨¢c b¨¤i vi?t v¨¤
m?u tin l?n th¨¬ kh?i ???c d¨´ng ?? bi?u di?n c¨¢c n?i dung nh?
h?n. V¨ª d?, menu ?i?u h??ng, ?o?n tr¨ªch d?n, khung b?u ch?n
hay ? t¨¬m ki?m th??ng ???c th? hi?n d??i d?ng c¨¢c kh?i.
Menu
? M?t kh¨¢i ni?m li¨ºn quan ch?t ch? ??n kh?i l¨¤ menu. Drupal c¨®
m?t h? th?ng menu ph?c t?p ???c s? d?ng v?i m?c ?¨ªch
ch¨ªnh l¨¤ x?y d?ng ?i?u h??ng cho trang web.
? H? th?ng n¨¤y c¨°n th?c hi?n ch?c n?ng nh? m?t c?ng c? d¨´ng
?? ¨¢nh x? c¨¢c URL t?i ch??ng tr¨¬nh ?i?u khi?n ri¨ºng. B?ng
c¨¢ch s? d?ng API menu, ng??i ph¨¢t tri?n c¨® th? li¨ºn k?t c¨¢c
???ng d?n t?i h¨¤m ??nh ngh?a tr??c.
Form
? C¨¢ch ch? y?u ?? ??a th?ng tin, n?i dung l¨ºn Web l¨¤ th?ng qua
c¨¢c form HTML.
X?yD?ng GiaoDi?n
? Giao di?n bao g?m m?t b? t¨¤i nguy¨ºn bao g?m c¨¢c m?u PHP,
CSS, Javascript v¨¤ h¨¬nh ?nh, t?o n¨ºn b? c?c v¨¤ c¨¢ch tr¨¬nh b¨¤y
cho n?i dung trong Drupal.
? ?? x?y d?ng m?t giao di?n m?i, ta ??ng nh?p v¨¤o admin
(quy?n cao nh?t), sau ?¨® nh?p v¨¤o Appearance:
X?yD?ng GiaoDi?n
? C¨® 2 c¨¢ch c¨¤i ??t, 1 l¨¤ ta s? ch?n install new theme, V¨¤ nh?n
v¨¤o n¨²t Browse ?? t?i file n¨¦n ?? c¨¤i ??t.
? Ho?c v?i c¨¢ch 2, ta s? gi?i n¨¦n file ?¨® v¨¤ ??t file ?? ???c gi?i
n¨¦n v¨¤o ???ng d?n sau: drupal 7.xthemes.
K?t N?i C? S? D? Li?u
? Drupal x¨¢c ??nh ???c CSDL, t¨¤i kho?n v¨¤ m?t kh?u c?a ng??i
d¨´ng khi thi?t l?p k?t n?i b?ng c¨¢ch ph?n t¨ªch file settings.php.
n?m trong th? m?c sites/default. D¨°ng th?ng tin ??nh ngh?a
k?t n?i t?i CSDL c¨® d?ng: $db_url=
'mysql://username:password@localhost/databasename';
? Ph??ng th?c ??nh ngh?a k?t n?i l¨¤ mysql ho?c pgsql ph? thu?c
v¨¤o CSDL ???c s? d?ng l¨¤ MySQL hay PostgreSQL.
? M?t ?o?n m? b¨ºn ngo¨¤i mu?n truy c?p v¨¤o CSDL c?a Drupal
s? ph?i g?i include_once(¡®includes/bootstrap.inc¡¯)sau ?¨® g?i
drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE) ?? t?o k?t
n?i, sau ?¨® th?c hi?n truy v?n b?ng h¨¤m db_query().
K?t N?i C? S? D? Li?u
Truy V?n??n Gi?n
? Drupal cung c?p h¨¤m db_query() ?? th?c thi m?t truy v?n t?i
k?t n?i ?ang ho?t ??ng. Nh?ng truy v?n ???c h? tr? bao g?m
SELECT, INSERT, UPDATE v¨¤ DELETE.
? V¨ª d?: L?y t?t c? c¨¢c h¨¤ng c?a m?t tr??ng t? b?ng joke c¨® vid
l¨¤ s? nguy¨ºn, c¨® gi¨¢ tr? b?ng $node->vid:
db_query('SELECT * FROM {joke} WHERE vid = %d', $node->vid);
C¨¢ch Vi?t M?t Module
? M?t module g?m hai file ch¨ªnh: m?t file.info v¨¤ m?t
file.module.
? File d?ng info s? ch?a th?ng tin c?a module ?¨®. File n¨¤y bao
g?m c¨¢c th¨¤nh ph?n ch¨ªnh sau:
Name = <t¨ºn c?a module>
Description = <m? t?>
Core = 7.x
C¨¢ch Vi?t M?t Module
? File.module l¨¤ file quan trong nh?t. ? ??y quy?t ??nh c¨¢c thao
t¨¢c c?a module. File n¨¤y ???c b?t ??u b?ng <?php.
File module
? ? ??y ta demo m?t module ??n gi?n ?¨® l¨¤ xu?t ra hello word:
? File.module c?a n¨® nh? sau:
? <?php
? function hello_menu() {
? return array(
? 'hello' => array(
? 'title' => 'Hello',
? 'page callback' => 'hello_page',
? 'access callback' => 'user_access',
? 'access arguments' => array('access content'),
? ),
? );
? }
?
? function hello_page() {
? return array(
? '#type' => 'markup',
? '#markup' => t('Hello.'),
? );
? }

More Related Content

What's hot (10)

Web203 slide 5
Web203   slide 5Web203   slide 5
Web203 slide 5
tuanduongcntt
?
tao module joomla 1.5
tao module  joomla 1.5tao module  joomla 1.5
tao module joomla 1.5
dvms
?
JavaEE Basic_Chapter1: Introduce JavaEE
JavaEE Basic_Chapter1: Introduce JavaEEJavaEE Basic_Chapter1: Introduce JavaEE
JavaEE Basic_Chapter1: Introduce JavaEE
Phaolo Pham
?
The First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress MeetupThe First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress Meetup
KhanhPham
?
B¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng web
B¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng webB¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng web
B¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng web
MasterCode.vn
?
Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8
Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8 Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8
Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8
KhanhPham
?
T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10
T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10
T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10
KhanhPham
?
Mysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?t
Mysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?tMysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?t
Mysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?t
KhanhPham
?
08 web course php ket noi csdl
08 web course   php ket noi csdl08 web course   php ket noi csdl
08 web course php ket noi csdl
Tr??ng D?y Ngh?
?
tao module joomla 1.5
tao module  joomla 1.5tao module  joomla 1.5
tao module joomla 1.5
dvms
?
JavaEE Basic_Chapter1: Introduce JavaEE
JavaEE Basic_Chapter1: Introduce JavaEEJavaEE Basic_Chapter1: Introduce JavaEE
JavaEE Basic_Chapter1: Introduce JavaEE
Phaolo Pham
?
The First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress MeetupThe First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress Meetup
KhanhPham
?
B¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng web
B¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng webB¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng web
B¨¤i 1 L?p tr¨¬nh website theo m? h¨¬nh MVC - X?y d?ng ?ng d?ng web
MasterCode.vn
?
Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8
Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8 Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8
Zend Framework 2 - Thao t¨¢c Database trong Zend Framework 2 - B¨¤i 8
KhanhPham
?
T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10
T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10
T¨¤i li?u Zend Framework 2 : Th¨ºm d? li?u v¨¤o database trong ZF2 - B¨¤i 10
KhanhPham
?
Mysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?t
Mysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?tMysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?t
Mysql Workbench h??ng d?n c¨¤i ??t - Video ti?ng Vi?t
KhanhPham
?
08 web course php ket noi csdl
08 web course   php ket noi csdl08 web course   php ket noi csdl
08 web course php ket noi csdl
Tr??ng D?y Ngh?
?

Similar to Drupal framework xanh (20)

Bao cao web cake php
Bao cao web cake phpBao cao web cake php
Bao cao web cake php
laonap166
?
ºÝºÝߣ 01-Web Application Overview (1).pdf
ºÝºÝߣ 01-Web Application Overview (1).pdfºÝºÝߣ 01-Web Application Overview (1).pdf
ºÝºÝߣ 01-Web Application Overview (1).pdf
HuyVnh4
?
Gt he quan_tri_csdl_ms_sql_server
Gt he quan_tri_csdl_ms_sql_serverGt he quan_tri_csdl_ms_sql_server
Gt he quan_tri_csdl_ms_sql_server
anhanh81
?
Qt he co so du lieu
Qt he co so du lieuQt he co so du lieu
Qt he co so du lieu
Nguy?n Ph?n
?
Salesforce CMS
Salesforce CMS Salesforce CMS
Salesforce CMS
furuCRMÖêʽ»áÉç CEO/Dreamforce Vietnam Founder
?
02 phan-thai-trung-drupal
02 phan-thai-trung-drupal02 phan-thai-trung-drupal
02 phan-thai-trung-drupal
hazzaz
?
Tutoria mvc framework
Tutoria mvc frameworkTutoria mvc framework
Tutoria mvc framework
Xuan Le
?
Hanoi php day 2008 - 02. phan thai trung - drupal
Hanoi php day 2008 - 02. phan thai trung - drupalHanoi php day 2008 - 02. phan thai trung - drupal
Hanoi php day 2008 - 02. phan thai trung - drupal
Nguyen Duc Phu
?
B¨¤i 2 - C?ng ngh? ADO.NET v?i C#
B¨¤i 2 - C?ng ngh? ADO.NET v?i C#B¨¤i 2 - C?ng ngh? ADO.NET v?i C#
B¨¤i 2 - C?ng ngh? ADO.NET v?i C#
MasterCode.vn
?
01-Gioithieu.pdf
01-Gioithieu.pdf01-Gioithieu.pdf
01-Gioithieu.pdf
DngKen1
?
bai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.pptbai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.ppt
HungHuyNguyen3
?
H?i t¨¬nh h¨¬nh bk tiny bktiny-hdsd
H?i t¨¬nh h¨¬nh bk tiny   bktiny-hdsdH?i t¨¬nh h¨¬nh bk tiny   bktiny-hdsd
H?i t¨¬nh h¨¬nh bk tiny bktiny-hdsd
Vu Hung Nguyen
?
Kentcources 110109221507-phpapp01
Kentcources 110109221507-phpapp01Kentcources 110109221507-phpapp01
Kentcources 110109221507-phpapp01
Giang Nguy?n
?
Tran thikimthao k37103014_wordpress
Tran thikimthao k37103014_wordpressTran thikimthao k37103014_wordpress
Tran thikimthao k37103014_wordpress
T¨ªm Bi?c
?
Web203 slide 8
Web203   slide 8Web203   slide 8
Web203 slide 8
tuanduongcntt
?
My sql.storage engine
My sql.storage engineMy sql.storage engine
My sql.storage engine
L¨º Nh?n
?
Chude03_nhom11
Chude03_nhom11Chude03_nhom11
Chude03_nhom11
Gi¨¢p Th¨¢i Ng?c
?
T¨¤i li?u L?p tr¨¬nh Zend Framework 2.x
T¨¤i li?u L?p tr¨¬nh Zend Framework 2.xT¨¤i li?u L?p tr¨¬nh Zend Framework 2.x
T¨¤i li?u L?p tr¨¬nh Zend Framework 2.x
ZendVN
?
Bao cao web cake php
Bao cao web cake phpBao cao web cake php
Bao cao web cake php
laonap166
?
ºÝºÝߣ 01-Web Application Overview (1).pdf
ºÝºÝߣ 01-Web Application Overview (1).pdfºÝºÝߣ 01-Web Application Overview (1).pdf
ºÝºÝߣ 01-Web Application Overview (1).pdf
HuyVnh4
?
Gt he quan_tri_csdl_ms_sql_server
Gt he quan_tri_csdl_ms_sql_serverGt he quan_tri_csdl_ms_sql_server
Gt he quan_tri_csdl_ms_sql_server
anhanh81
?
Qt he co so du lieu
Qt he co so du lieuQt he co so du lieu
Qt he co so du lieu
Nguy?n Ph?n
?
02 phan-thai-trung-drupal
02 phan-thai-trung-drupal02 phan-thai-trung-drupal
02 phan-thai-trung-drupal
hazzaz
?
Tutoria mvc framework
Tutoria mvc frameworkTutoria mvc framework
Tutoria mvc framework
Xuan Le
?
Hanoi php day 2008 - 02. phan thai trung - drupal
Hanoi php day 2008 - 02. phan thai trung - drupalHanoi php day 2008 - 02. phan thai trung - drupal
Hanoi php day 2008 - 02. phan thai trung - drupal
Nguyen Duc Phu
?
B¨¤i 2 - C?ng ngh? ADO.NET v?i C#
B¨¤i 2 - C?ng ngh? ADO.NET v?i C#B¨¤i 2 - C?ng ngh? ADO.NET v?i C#
B¨¤i 2 - C?ng ngh? ADO.NET v?i C#
MasterCode.vn
?
01-Gioithieu.pdf
01-Gioithieu.pdf01-Gioithieu.pdf
01-Gioithieu.pdf
DngKen1
?
bai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.pptbai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.ppt
HungHuyNguyen3
?
H?i t¨¬nh h¨¬nh bk tiny bktiny-hdsd
H?i t¨¬nh h¨¬nh bk tiny   bktiny-hdsdH?i t¨¬nh h¨¬nh bk tiny   bktiny-hdsd
H?i t¨¬nh h¨¬nh bk tiny bktiny-hdsd
Vu Hung Nguyen
?
Kentcources 110109221507-phpapp01
Kentcources 110109221507-phpapp01Kentcources 110109221507-phpapp01
Kentcources 110109221507-phpapp01
Giang Nguy?n
?
Tran thikimthao k37103014_wordpress
Tran thikimthao k37103014_wordpressTran thikimthao k37103014_wordpress
Tran thikimthao k37103014_wordpress
T¨ªm Bi?c
?
My sql.storage engine
My sql.storage engineMy sql.storage engine
My sql.storage engine
L¨º Nh?n
?
T¨¤i li?u L?p tr¨¬nh Zend Framework 2.x
T¨¤i li?u L?p tr¨¬nh Zend Framework 2.xT¨¤i li?u L?p tr¨¬nh Zend Framework 2.x
T¨¤i li?u L?p tr¨¬nh Zend Framework 2.x
ZendVN
?

Drupal framework xanh

  • 1. Drupal Framework Sinh vi¨ºn : Nguy?n V?n Xanh MSSV: 1011440
  • 2. N?i Dung Tr¨¬nh B¨¤y ? 1. Gi?i Thi?u Drupal Framework ? 2. H? Th?ng T?p Tin V¨¤ Th? M?c Trong Drupal ? 3. Ki?n Tr¨²c Drupal ? 4. C¨¢c Kh¨¢i Ni?m C? B?n ? 5. X?y D?ng Giao Di?n V¨¤ K?t N?i C? S? D? Li?u ? 6. C¨¢ch Vi?t M?t Module
  • 3. Gi?i Thi?u Drupal Framework ? Drupal l¨¤ ph?n m?m ph¨¢t tri?n theo h??ng m? ¨C ?un, m?t h? th?ng qu?n tr? mi?n ph¨ª v¨¤ m? ngu?n m? ? Drupal cho ph¨¦p ng??i qu?n tr? h? th?ng t?o v¨¤ t? ch?c d? li?u, t¨´y ch?nh c¨¢ch tr¨¬nh b¨¤y, t? ??ng h¨®a c¨¢c t¨¢c v? ?i?u h¨¤nh v¨¤ qu?n l? h? th?ng. ? Drupal ch?y ???c tr¨ºn nhi?u m?i tr??ng kh¨¢c nhau, bao g?m Windows, Mac OS X, linus, FreeBSD, v¨¤ c¨¢c m?i tr??ng h? tr? m¨¢y ph?c v? Web Apache( phi¨ºn b?n 1.3+) ho?c IIS( phi¨ºn b?n 4.3.3+). ? Drupal k?t n?i v?i c? s? d? li?u MySQL ho?c PostgreSQL ?? l?u n?i dung v¨¤ c¨¢c thi?t l?p.
  • 5. H?Th?ngT?pTinV¨¤Th?M?cTrongDrupal ? Th? m?c includes ch?a th? vi?n c¨¢c h¨¤m th??ng d¨´ng. ? Th? m?c misc l?u tr? c¨¢c bi?u t??ng v¨¤ h¨¬nh ?nh d¨´ng cho Javascript v¨¤ m?t s? t¨¤i nguy¨ºn kh¨¢c. ? Th? m?c profiles ch?a c¨¢c profile kh¨¢c nhau d¨´ng cho c¨¤i ??t v¨¤ thi?t l?p Drupal.
  • 6. H?Th?ngT?pTinV¨¤Th?M?cTrongDrupal ? Th? m?c scripts ch?a c¨¢c t?p l?nh d¨´ng ?? ph?n t¨ªch c¨² ph¨¢p, d?n d?p m? ngu?n v¨¤ x? l? c¨¢c t¨¢c v? ??c bi?t v?i cron. Nh?ng t?p l?nh ti?n ¨ªch n¨¤y ???c vi?t b?ng ng?n ng? shell v¨¤ Perl. ? Th? m?c themes ch?a c¨¢c c?ng c? t?o khu?n m?u v¨¤ giao di?n m?c ??nh cho Drupal. ? Th? m?c sites ch?a c¨¢c thay ??i ??i v?i Drupal d??i d?ng thi?t l?p, module v¨¤ giao di?n. C¨¢c module ???c th¨ºm v¨¤o s? n?m trong sites/all/modules. Trong th? m?c sites c¨® th? m?c ???c ??t t¨ºn l¨¤ default ch?a c¨¢c thi?t l?p m?c ??nh cho h? th?ng Drupal, ???c ghi l?i trong file settings.php.
  • 7. H?Th?ngT?pTinV¨¤Th?M?cTrongDrupal ? D??i ??y l¨¤ c?u tr¨²c b¨ºn trong th? m?c sites
  • 8. Ki?n Tr¨²c Drupal ? Ki?n Tr¨²c Module ? C? Ch? Hook
  • 9. Ki?n Tr¨²c Module ? Module l¨¤ m?t b? g?m m? PHP v¨¤ c¨¢c file h? tr? s? d?ng API v¨¤ ki?n tr¨²c c?a Drupal t¨ªch h?p c¨¢c th¨¤nh ph?n m?i v¨¤o trong framework c?a Drupal. ? C? ch? module c?a Drupal ???c thi?t k? ?? cung c?p m?t c¨¢ch th?c ??ng nh?t gi¨²p ng??i ph¨¢t tri?n m? r?ng kh? n?ng c?a h? th?ng. ? ?? m?t module s? d?ng ???c th¨¬ n¨® ph?i ???c b?t b?i ng??i qu?n tr? trang web. Drupal s? chuy?n c¨¢c y¨ºu c?u c?a ng??i d¨´ng ??n module ?¨® n?u c?n thi?t.
  • 10. C? Ch? Hook ? C? ch? hook l¨¤ m?t kh¨¢i ni?m r?t quan tr?ng trong vi?c ph¨¢t tri?n module cho Drupal. C? ch? n¨¤y gi¨²p Drupal bi?t ???c ph?i g?i module n¨¤o khi x? l? c¨¢c y¨ºu c?u kh¨¢c nhau t? ng??i d¨´ng ? M?t y¨ºu c?u c?a ng??i d¨´ng s? ???c Drupal x? l? qua m?t chu?i c¨¢c b??c kh¨¢c nhau. ??u ti¨ºn, ph?n l?i kh?i ??ng ?ng d?ng, ??nh ngh?a c¨¢c c¨¢c bi?n v¨¤ c¨¢c h¨¤m th??ng d¨´ng. Ti?p theo, h? th?ng s? n?p c¨¢c th? vi?n, giao di?n v¨¤ module c?n thi?t v¨¤ ¨¢nh x? URI ???c y¨ºu c?u t?i ?o?n m? ?i?u khi?n t??ng ?ng. Sau ?¨®, d? li?u s? ???c ??nh d?ng v¨¤ ??t v¨¤o giao di?n ?? ??a ra tr¨¬nh duy?t c?a ng??i d¨´ng.
  • 11. C? Ch? Hook ? Trong m?t th?i ?i?m x¨¢c ??nh tr??c, Drupal th?c thi c¨¢c hook. H? th?ng s? d?a v¨¤o hook ?? ki?m tra m?t s? ho?c t?t c? c¨¢c module ?ang ???c b?t, t¨¬m ki?m c¨¢c h¨¤m theo khu?n m?u ???c ??nh ngh?a tr??c. M?t s? m?u li¨ºn k?t qu¨¢ tr¨¬nh n¨¤y v?i ph??ng th?c "callback" th??ng ???c s? d?ng trong m? h¨¬nh x? l? s? ki?n. C? ch? hook c?ng t??ng t? nh? th?.
  • 12. C¨¢c Kh¨¢i Ni?m C? B?n: ? Node ? User ? Block ? Menu ? Form
  • 13. Node ? Node la? m?t m?u n?i dung d?ng v?n b?n t?ng qu¨¢t trong Drupal ???c g?i b?ng thu?t ng?. M?t node, hi?u theo c¨¢ch c?a Drupal, l¨¤ m?t ??i t??ng t?ng qu¨¢t d¨´ng ?? bi?u di?n n?i dung d?ng v?n b?n. Tuy nhi¨ºn, v?i kh? n?ng t¨´y bi?n c?a Drupal, ng??i ph¨¢t tri?n c¨® th? t?o ra c¨¢c module m? r?ng kh? n?ng tr¨¬nh b¨¤y c?a node ?? c¨® th? hi?n th? c¨¢c n?i dung ngo¨¤i v?n b?n thu?n t¨²y, nh? h¨¬nh ?nh, video hay c¨¢c file ?m thanh.
  • 14. User ? M?t ki?u ??i t??ng quan tr?ng kh¨¢c trong Drupal l¨¤ ??i t??ng User. Gi?ng nh? comment v¨¤ node, d? li?u ng??i d¨´ng c?ng ???c l?u tr? trong c? s? d? li?u v¨¤ ???c l?y ra trong qu¨¢ tr¨¬nh x? l?. Th?ng tin v? ng??i d¨´ng ???c s? d?ng trong vi?c x¨¢c th?c, ??nh ngh?a c¨¢c thi?t l?p c¨¢ nh?n v¨¤ quy?n h?n, v¨¤ t?o c¨¢c b?n log.
  • 15. Block ? M?t kh¨¢i ni?m quan tr?ng trong Drupal l¨¤ Kh?i (block). N?u m?t node ???c s? d?ng ?? l?u tr? v¨¤ tr¨¬nh b¨¤y c¨¢c b¨¤i vi?t v¨¤ m?u tin l?n th¨¬ kh?i ???c d¨´ng ?? bi?u di?n c¨¢c n?i dung nh? h?n. V¨ª d?, menu ?i?u h??ng, ?o?n tr¨ªch d?n, khung b?u ch?n hay ? t¨¬m ki?m th??ng ???c th? hi?n d??i d?ng c¨¢c kh?i.
  • 16. Menu ? M?t kh¨¢i ni?m li¨ºn quan ch?t ch? ??n kh?i l¨¤ menu. Drupal c¨® m?t h? th?ng menu ph?c t?p ???c s? d?ng v?i m?c ?¨ªch ch¨ªnh l¨¤ x?y d?ng ?i?u h??ng cho trang web. ? H? th?ng n¨¤y c¨°n th?c hi?n ch?c n?ng nh? m?t c?ng c? d¨´ng ?? ¨¢nh x? c¨¢c URL t?i ch??ng tr¨¬nh ?i?u khi?n ri¨ºng. B?ng c¨¢ch s? d?ng API menu, ng??i ph¨¢t tri?n c¨® th? li¨ºn k?t c¨¢c ???ng d?n t?i h¨¤m ??nh ngh?a tr??c.
  • 17. Form ? C¨¢ch ch? y?u ?? ??a th?ng tin, n?i dung l¨ºn Web l¨¤ th?ng qua c¨¢c form HTML.
  • 18. X?yD?ng GiaoDi?n ? Giao di?n bao g?m m?t b? t¨¤i nguy¨ºn bao g?m c¨¢c m?u PHP, CSS, Javascript v¨¤ h¨¬nh ?nh, t?o n¨ºn b? c?c v¨¤ c¨¢ch tr¨¬nh b¨¤y cho n?i dung trong Drupal. ? ?? x?y d?ng m?t giao di?n m?i, ta ??ng nh?p v¨¤o admin (quy?n cao nh?t), sau ?¨® nh?p v¨¤o Appearance:
  • 19. X?yD?ng GiaoDi?n ? C¨® 2 c¨¢ch c¨¤i ??t, 1 l¨¤ ta s? ch?n install new theme, V¨¤ nh?n v¨¤o n¨²t Browse ?? t?i file n¨¦n ?? c¨¤i ??t. ? Ho?c v?i c¨¢ch 2, ta s? gi?i n¨¦n file ?¨® v¨¤ ??t file ?? ???c gi?i n¨¦n v¨¤o ???ng d?n sau: drupal 7.xthemes.
  • 20. K?t N?i C? S? D? Li?u ? Drupal x¨¢c ??nh ???c CSDL, t¨¤i kho?n v¨¤ m?t kh?u c?a ng??i d¨´ng khi thi?t l?p k?t n?i b?ng c¨¢ch ph?n t¨ªch file settings.php. n?m trong th? m?c sites/default. D¨°ng th?ng tin ??nh ngh?a k?t n?i t?i CSDL c¨® d?ng: $db_url= 'mysql://username:password@localhost/databasename'; ? Ph??ng th?c ??nh ngh?a k?t n?i l¨¤ mysql ho?c pgsql ph? thu?c v¨¤o CSDL ???c s? d?ng l¨¤ MySQL hay PostgreSQL. ? M?t ?o?n m? b¨ºn ngo¨¤i mu?n truy c?p v¨¤o CSDL c?a Drupal s? ph?i g?i include_once(¡®includes/bootstrap.inc¡¯)sau ?¨® g?i drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE) ?? t?o k?t n?i, sau ?¨® th?c hi?n truy v?n b?ng h¨¤m db_query().
  • 21. K?t N?i C? S? D? Li?u
  • 22. Truy V?n??n Gi?n ? Drupal cung c?p h¨¤m db_query() ?? th?c thi m?t truy v?n t?i k?t n?i ?ang ho?t ??ng. Nh?ng truy v?n ???c h? tr? bao g?m SELECT, INSERT, UPDATE v¨¤ DELETE. ? V¨ª d?: L?y t?t c? c¨¢c h¨¤ng c?a m?t tr??ng t? b?ng joke c¨® vid l¨¤ s? nguy¨ºn, c¨® gi¨¢ tr? b?ng $node->vid: db_query('SELECT * FROM {joke} WHERE vid = %d', $node->vid);
  • 23. C¨¢ch Vi?t M?t Module ? M?t module g?m hai file ch¨ªnh: m?t file.info v¨¤ m?t file.module. ? File d?ng info s? ch?a th?ng tin c?a module ?¨®. File n¨¤y bao g?m c¨¢c th¨¤nh ph?n ch¨ªnh sau: Name = <t¨ºn c?a module> Description = <m? t?> Core = 7.x
  • 24. C¨¢ch Vi?t M?t Module ? File.module l¨¤ file quan trong nh?t. ? ??y quy?t ??nh c¨¢c thao t¨¢c c?a module. File n¨¤y ???c b?t ??u b?ng <?php.
  • 25. File module ? ? ??y ta demo m?t module ??n gi?n ?¨® l¨¤ xu?t ra hello word: ? File.module c?a n¨® nh? sau: ? <?php ? function hello_menu() { ? return array( ? 'hello' => array( ? 'title' => 'Hello', ? 'page callback' => 'hello_page', ? 'access callback' => 'user_access', ? 'access arguments' => array('access content'), ? ), ? ); ? } ? ? function hello_page() { ? return array( ? '#type' => 'markup', ? '#markup' => t('Hello.'), ? ); ? }