blob: 21ac6aa4b18e4b95bd93d443d7eb7b122dfd0157 [file] [log] [blame]
adminb0dd10f2006-08-25 17:25:49 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html>
3<head>
4
5<title>Code Igniter User Guide</title>
6
7<style type='text/css' media='all'>@import url('../userguide.css');</style>
8<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />
9
admin17a890d2006-09-27 20:42:42 +000010<script type="text/javascript" src="../nav/nav.js"></script>
admin2296fc32006-09-27 21:07:02 +000011<script type="text/javascript" src="../nav/prototype.lite.js"></script>
admin17a890d2006-09-27 20:42:42 +000012<script type="text/javascript" src="../nav/moo.fx.js"></script>
adminb0dd10f2006-08-25 17:25:49 +000013<script type="text/javascript">
14window.onload = function() {
admine334c472006-10-21 19:44:22 +000015 myHeight = new fx.Height('nav', {duration: 400});
adminb0dd10f2006-08-25 17:25:49 +000016 myHeight.hide();
17}
18</script>
19
20<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
21<meta http-equiv='expires' content='-1' />
22<meta http-equiv= 'pragma' content='no-cache' />
23<meta name='robots' content='all' />
24<meta name='author' content='Rick Ellis' />
25<meta name='description' content='Code Igniter User Guide' />
26
27</head>
28<body>
29
30<!-- START NAVIGATION -->
31<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
32<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle.jpg" width="153" height="44" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div>
33<div id="masthead">
34<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
35<tr>
admin05186612006-10-28 03:28:01 +000036<td><h1>Code Igniter User Guide Version 1.5.0</h1></td>
adminc0d5d522006-10-30 19:40:35 +000037<td id="breadcrumb_right"><a href="../toc.html">Table of Contents Page</a></td>
adminb0dd10f2006-08-25 17:25:49 +000038</tr>
39</table>
40</div>
41<!-- END NAVIGATION -->
42
43
44<!-- START BREADCRUMB -->
45<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
46<tr>
47<td id="breadcrumb">
48<a href="http://www.codeigniter.com/">Code Igniter Home</a> &nbsp;&#8250;&nbsp;
49<a href="../index.html">User Guide Home</a> &nbsp;&#8250;&nbsp;
50MVC
51</td>
52<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="www.codeigniter.com/user_guide/" />Search User Guide&nbsp; <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" />&nbsp;<input type="submit" class="submit" name="sa" value="Go" /></form></td>
53</tr>
54</table>
55<!-- END BREADCRUMB -->
56
57<br clear="all" />
58
59
60<!-- START CONTENT -->
61<div id="content">
62
63
64<h1>Model-View-Controller</h1>
65
admine334c472006-10-21 19:44:22 +000066<p>Code Igniter is based on the Model-View-Controller development pattern.
adminb0dd10f2006-08-25 17:25:49 +000067
68MVC is a software approach that separates application logic from presentation. In practice, it permits your web pages to contain minimal scripting since the presentation is separate from the PHP scripting.</p>
69
70<ul>
admine334c472006-10-21 19:44:22 +000071<li>The <strong>Model</strong> represents your data structures. Typically your model classes will contains functions that help you
adminb0dd10f2006-08-25 17:25:49 +000072retrieve, insert, and update information in your your database.</li>
73<li>The <strong>View</strong> is the information that is being presented to a user. A View will normally be a web page, but
admin25f6fca2006-09-23 01:23:14 +000074in Code Igniter, a view can also be a page fragment like a header or footer. It can also be an RSS page, or any other type of "page".</li>
adminb0dd10f2006-08-25 17:25:49 +000075<li>The <strong>Controller</strong> serves as an <em>intermediary</em> between the Model, the View,
76and any other resources needed to process the HTTP request and generate a web page.</li>
77
78</ul>
79
admine334c472006-10-21 19:44:22 +000080<p>Code Igniter has a fairly loose approach to MVC since Models are not required.
adminb0dd10f2006-08-25 17:25:49 +000081If you don't need the added separation, or find that maintaining models requires more complexity than you
admine334c472006-10-21 19:44:22 +000082want, you can ignore them and build your application minimally using Controllers and Views. Code Igniter also
adminb0dd10f2006-08-25 17:25:49 +000083enables you to incorporate your own existing scripts, or even develop core libraries for the system,
84 enabling you to work in a way that makes the most sense to you.</p>
85
86
87
88
89</div>
90<!-- END CONTENT -->
91
92
93<div id="footer">
94<p>
95Previous Topic:&nbsp;&nbsp;<a href="appflow.html">Application Flow Chart</a>
96&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
97<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
98<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
99Next Topic:&nbsp;&nbsp;<a href="goals.html">Architectural Goals</a>
100<p>
101<p><a href="http://www.codeigniter.com">Code Igniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006 &nbsp;&middot;&nbsp; <a href="http://www.pmachine.com">pMachine, Inc.</a></p>
102</div>
103
104</body>
105</html>