Date post: | 17-Feb-2018 |
Category: |
Documents |
Upload: | manuel-reynaga |
View: | 228 times |
Download: | 0 times |
of 35
7/23/2019 Introduccion a MVC con Codeigniter
1/35
By @t_carlosochoa
INTRODUCTION TO MVC WEB F
RAMEWORK WITH CODEIGNITER
7/23/2019 Introduccion a MVC con Codeigniter
2/35
WHAT IS MVC?
7/23/2019 Introduccion a MVC con Codeigniter
3/35
WHAT IS MVC?
A Design Pattern
Stands for Model, ViewandController
Separate Business Logic fromPresentation Logic
7/23/2019 Introduccion a MVC con Codeigniter
4/35
MODEL-VIEW-CONTROLLER
Model
ViewControll
er
7/23/2019 Introduccion a MVC con Codeigniter
5/35
MODEL
Represents data
Hold data structure Usually (but not always)backed by
database
Contains data related logic
i.e. determine whether today is userbirthday or not
7/23/2019 Introduccion a MVC con Codeigniter
6/35
CONTROLLER
Holds business logic
Handling Input!utput "otify model#s$ of user action
Use %iew#s$ for presentation
7/23/2019 Introduccion a MVC con Codeigniter
7/35
VIEW
How data will be displayed to user
Holds presentation logic i.e. looping through a set of data to be
displayed
7/23/2019 Introduccion a MVC con Codeigniter
8/35
MVC AND THE WEB
7/23/2019 Introduccion a MVC con Codeigniter
9/35
MVC FOR WEB
7/23/2019 Introduccion a MVC con Codeigniter
10/35
MVC WEB FRAMEWORK
Ru
by
Ruby onRails
MerbEtc.
Pyth
on
DjangoPylonsTurboGea
rsEtc.
PHP
CodeIgniter
CakePHPend
!ra"ework
Etc.
7/23/2019 Introduccion a MVC con Codeigniter
11/35
INTRODUCTION TO
CODEIGNITER
7/23/2019 Introduccion a MVC con Codeigniter
12/35
INSTALLATION -> YOU GOT
IT
7/23/2019 Introduccion a MVC con Codeigniter
13/35
INITIAL CONFIGURATION:
CONFIG.PHP
A&&'ICA(I!"C!")I*
+cong-base/url0 1 http2codeigniter.co3
+cong-inde4/page0 1 5inde4.php3
(! 6A78 (HIS 9!R7, :!U "88; (! I"C'U;8 A" .H(
ACC8SS )I'8 (! (H8 C!;8I*"I(8R R!!( ;IR8C(!R:
7/23/2019 Introduccion a MVC con Codeigniter
14/35
DEFAULT SETTINGS
+C!")I*-CHARS8(0 1 ?3
+C!")I*-CACH8/&A(H0 1 3
+C!")I*-'!*/;A(8/)!R6A(0 1 :=6=; H2I2S3
+C!")I*-*'!@A'/SS/)I'(8RI"*0 1 )A'S83
+C!")I*-'A"*UA*801 8"*'ISH3
+C!")I*-8"CR:&(I!"/78:0 1 3
8(C.
7/23/2019 Introduccion a MVC con Codeigniter
15/35
CODEIGNITER URLS
C!;8I*"I(8R.C!I";8.&H&"89SAR(IC'86:/AR(IC'8B8(8
news Controller
article class function
my/article = any additional segments
I) :!U ;! "!( US8 C!;8I*"I(8R, :!UR UR'S IS2
8A6&'8.C!6"89S.&H&D6!;81SH!9EI;1F
7/23/2019 Introduccion a MVC con Codeigniter
16/35
REMOVING THE INDEX.PHP
FILE (APACHE)
@: ;8)AU'(, (H8 I";8.&H& )I'8 9I'' @8 I"C'U;8; I":!UR UR'S2
C!;8I*"I(8R.C!I";8.&H&"89SAR(IC'86:/AR(IC'8
USI"* A .H(ACC8SS )I'8 9I(H S!68 SI6&'8 RU'8S
8dit httpd.conf
Unmark 'oad6odule rewrite/module modulesmod/rewrite.so
RewriteEngine on
RewriteCond $1 !^(index\.ppi"agesrobots\.txt#
RewriteRule ^(.#$ %index.pp%$1 &'
7/23/2019 Introduccion a MVC con Codeigniter
17/35
ADDING A URL SUFFIX
8;I( C!")I*C!")I*.&H& )I'8
C!;8I*"I(8RI";8.&H&&R!;UC(SGI89SH!8S
8A6&'8.C!6I";8.&H&&R!;UC(SGI89SH!8S.H(6'
7/23/2019 Introduccion a MVC con Codeigniter
18/35
WHAT IS A CONTROLLER?
C!;8I*"I(8R.C!I";8.&H&@'!*
(H8" SAG8 (H8 )I'8 (! :!UR A&&'ICA(I!"C!"(R!''8RS )!';8R
7/23/2019 Introduccion a MVC con Codeigniter
19/35
CONTROLLER
C'ASS "A68S 6US( S(AR( 9I(H A" U&&8RCAS8'8((8R. I" !(H8R 9!R;S
class Blog e4tends CI/Controller
7/23/2019 Introduccion a MVC con Codeigniter
20/35
FUNCTIONS - METHODS
8A6&'8.C!6I";8.&H&@'!*INDEX
8A6&'8.C!6I";8.&H&@'!*COMMENTS
7/23/2019 Introduccion a MVC con Codeigniter
21/35
FUNCTION CALLS
+(HIS=J+68(H!;#$3
7/23/2019 Introduccion a MVC con Codeigniter
22/35
PASSING URI SEGMENTS TO YOUR
FUNCTIONS
8A6&'8.C!6I";8.&H&&R!;UC(SSH!8SSA";A'SFKB
7/23/2019 Introduccion a MVC con Codeigniter
23/35
DEFINING A DEFAULT CONTROLLER
!&8" :!UR A&&'ICA(I!"C!")I*R!U(8S.&H& )I'8 A";S8( (HIS GARIA@'82
+R!U(8-;8)AU'(/C!"(R!''8R0 1 @'!*3
7/23/2019 Introduccion a MVC con Codeigniter
24/35
URI ROUTING: ROUTES.PHP
R!U(I"* RU'8S AR8 ;8)I"8; I" :!UR A&&'ICA(I!"C!")I*R!U(8S.&H& )I'8
8A6&'8.C!6C'ASS)U"C(I!"I;
H((&2999.8A6&'8.C!6SI(8&A*8SL
H((&2999.8A6&'8.C!6A@!U(/US
+R!U(8-A@!U(/US0 1
7/23/2019 Introduccion a MVC con Codeigniter
25/35
REGULAR EXPRESSIONS
+R!U(8-&R!;UC(S#-A=O0P$#Q;P$0 1 N+FI;/+KN3
+R!U(8-;8)AU'(/C!"(R!''8R0 1 98'C!6853
7/23/2019 Introduccion a MVC con Codeigniter
26/35
CLASS CONSTRUCTORS
I" &H&
7/23/2019 Introduccion a MVC con Codeigniter
27/35
EXERCISE
R86!(8 I";8.&H& 9I(H UR'.
9RI(8 C!"(R!''8R "89S
"89S C!"(AI"S SH!9"89S'IS( A"; SH!9"89S)U"C(I!".
US8 +(HIS=J+68(H!;#$3 (! CA'' SH!9"89S'IS(A"; SH!9"89S )U"C(I!" I" I";8 )U"C(I!", (H8"8CH! H8''! 9!R';
S8( U&'!A; ;IR8C(!R: GA'U8 I" C'ASSC!"S(RUC(!RS
+(HIS=JU&'!A;/)!';8R 1 U&'!A;"89S3
7/23/2019 Introduccion a MVC con Codeigniter
28/35
CREATING A VIEW
SAG8 (H8 )I'8 I" :!UR A&&'ICA(I!"GI89S )!';8R
7/23/2019 Introduccion a MVC con Codeigniter
29/35
LOADING A VIEW
+(HIS=J'!A;=JGI89#"A68$3
C!;8I*"I(8R.C!@'!*
7/23/2019 Introduccion a MVC con Codeigniter
30/35
LOADING MULTIPLE VIEWS
+(HIS=J'!A;=JGI89#"A68$3
8A6&'8.C!6I";8.&H&@'!*
7/23/2019 Introduccion a MVC con Codeigniter
31/35
STORING VIEWS WITHIN SU
B-FOLDERS
+(HIS=J'!A;=JGI89#)!';8R/"A68)I'8/"A68$3
)!';8R/"A68 IS C!"(R!''8R "A68
7/23/2019 Introduccion a MVC con Codeigniter
32/35
ADDING DYNAMIC DATA TO
THE VIEW
:!U CA" US8 A" ARRA: !R A" !@M8C( I" (H8 S8C!";&ARA68(8R !) (H8 GI89 '!A;I"* )U"C(I!".
7/23/2019 Introduccion a MVC con Codeigniter
33/35
EXCERCISE
CR8A(8 A&&'ICA(I!"GI89SH8A;8R.&H& A";
)!!(8R.&H&
)U"C(I!" "U6@8R#+"U6/F, +"U6/K$, !U(&U( )I'8A&&'ICA(I!"GI89S!U(&U(I";8.&H&
8A6&'8.C!6!U(&U("U6@8R
8A6&'8.C!6!U(&U("U6@8RFTL
7/23/2019 Introduccion a MVC con Codeigniter
34/35
ANY UESTION?
7/23/2019 Introduccion a MVC con Codeigniter
35/35
THANK YOU