/lenasys/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/lenasys/trunk

« back to all changes in this revision

Viewing changes to codeigniter/user_guide/libraries/cart.html

  • Committer: galaxyAbstractor
  • Date: 2013-04-11 13:59:06 UTC
  • mto: (23.2.1 lenasys)
  • mto: This revision was merged to the branch mainline in revision 24.
  • Revision ID: galaxyabstractor@gmail.com-20130411135906-tohvazsxmw77otid
Removed codeigniter user guide, shouldn't be in the repo
Added and implemented CKEditor Wysiwyg editor for editing of pages
Made already uploaded code files visible as you edit a page
Implemented Adams dropdown menu in codeviewer

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
 
<head>
4
 
 
5
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
 
<title>Shopping Cart Class : CodeIgniter User Guide</title>
7
 
 
8
 
<style type='text/css' media='all'>@import url('../userguide.css');</style>
9
 
<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />
10
 
 
11
 
<script type="text/javascript" src="../nav/nav.js"></script>
12
 
<script type="text/javascript" src="../nav/prototype.lite.js"></script>
13
 
<script type="text/javascript" src="../nav/moo.fx.js"></script>
14
 
<script type="text/javascript" src="../nav/user_guide_menu.js"></script>
15
 
 
16
 
<meta http-equiv='expires' content='-1' />
17
 
<meta http-equiv= 'pragma' content='no-cache' />
18
 
<meta name='robots' content='all' />
19
 
<meta name='author' content='ExpressionEngine Dev Team' />
20
 
<meta name='description' content='CodeIgniter User Guide' />
21
 
 
22
 
</head>
23
 
<body>
24
 
 
25
 
<!-- START NAVIGATION -->
26
 
<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
27
 
<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle_darker.jpg" width="154" height="43" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div>
28
 
<div id="masthead">
29
 
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
30
 
<tr>
31
 
<td><h1>CodeIgniter User Guide Version 2.1.3</h1></td>
32
 
<td id="breadcrumb_right"><a href="../toc.html">Table of Contents Page</a></td>
33
 
</tr>
34
 
</table>
35
 
</div>
36
 
<!-- END NAVIGATION -->
37
 
 
38
 
 
39
 
<!-- START BREADCRUMB -->
40
 
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
41
 
<tr>
42
 
<td id="breadcrumb">
43
 
<a href="http://codeigniter.com/">CodeIgniter Home</a> &nbsp;&#8250;&nbsp;
44
 
<a href="../index.html">User Guide Home</a> &nbsp;&#8250;&nbsp;
45
 
Shopping Cart Class
46
 
</td>
47
 
<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="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>
48
 
</tr>
49
 
</table>
50
 
<!-- END BREADCRUMB -->
51
 
 
52
 
<br clear="all" />
53
 
 
54
 
 
55
 
<!-- START CONTENT -->
56
 
<div id="content">
57
 
 
58
 
 
59
 
<h1>Shopping Cart Class</h1>
60
 
 
61
 
<p>The Cart Class permits items to be added to a session that stays active while a user is browsing your site.
62
 
These items can be retrieved and displayed in a standard "shopping cart" format, allowing the user to update the quantity or remove items from the cart.</p>
63
 
 
64
 
<p>Please note that the Cart Class ONLY provides the core "cart" functionality. It does not provide shipping, credit card authorization, or other processing components.</p>
65
 
 
66
 
 
67
 
<h2>Initializing the Shopping Cart Class</h2>
68
 
 
69
 
<p><strong>Important:</strong> The Cart class utilizes CodeIgniter's
70
 
<a href="sessions.html">Session Class</a>  to save the cart information to a database, so before using the Cart class you must set up a database table
71
 
as indicated in the <a href="sessions.html">Session Documentation</a> , and set the session preferences in your <kbd>application/config/config.php</kbd> file to utilize a database.</p>
72
 
 
73
 
<p>To initialize the Shopping Cart Class in your controller constructor, use the <dfn>$this->load->library</dfn> function:</p>
74
 
 
75
 
<code>$this->load->library('cart');</code>
76
 
<p>Once loaded, the Cart object will be available using: <dfn>$this->cart</dfn></p>
77
 
 
78
 
<p class="important"><strong>Note:</strong> The Cart Class will load and initialize the Session Class automatically, so unless you are using sessions elsewhere in your application, you do not need to load the Session class.</p>
79
 
 
80
 
<h2>Adding an Item to The Cart</h2>
81
 
 
82
 
<p>To add an item to the shopping cart, simply pass an array with the product information to the <dfn>$this->cart->insert()</dfn> function, as shown below:</p>
83
 
 
84
 
<code>
85
 
$data = array(<br />
86
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'id'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; => 'sku_123ABC',<br />
87
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 1,<br />
88
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'price'&nbsp;&nbsp; => 39.95,<br />
89
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'name'&nbsp;&nbsp;&nbsp; => 'T-Shirt',<br />
90
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'options' => array('Size' => 'L', 'Color' => 'Red')<br />
91
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br />
92
 
<br />
93
 
 
94
 
$this->cart->insert($data);
95
 
 
96
 
</code>
97
 
 
98
 
<p class="important"><strong>Important:</strong> The first four array indexes above (<dfn>id</dfn>, <dfn>qty</dfn>, <dfn>price</dfn>, and <dfn>name</dfn>) are <strong>required</strong>.
99
 
If you omit any of them the data will not be saved to the cart. The fifth index (<dfn>options</dfn>) is optional.
100
 
It is intended to be used in cases where your product has options associated with it. Use an array for options, as shown above.</p>
101
 
 
102
 
<p>The five reserved indexes are:</p>
103
 
 
104
 
<ul>
105
 
<li><strong>id</strong> - Each product in your store must have a unique identifier. Typically this will be an "sku" or other such identifier.</li>
106
 
<li><strong>qty</strong> - The quantity being purchased.
107
 
<li><strong>price</strong> - The price of the item.
108
 
<li><strong>name</strong> - The name of the item.
109
 
<li><strong>options</strong> - Any additional attributes that are needed to identify the product. These must be passed via an array.
110
 
</ul>
111
 
 
112
 
<p>In addition to the five indexes above, there are two reserved words: <dfn>rowid</dfn> and <dfn>subtotal</dfn>.  These are used internally by the Cart class, so
113
 
please do NOT use those words as index names when inserting data into the cart.</p>
114
 
 
115
 
<p>Your array may contain additional data. Anything you include in your array will be stored in the session. However, it is best to standardize your data among all your products in order to make displaying the information in a table easier.</p>
116
 
 
117
 
<p>The insert() method will return the $rowid if you successfully insert a single item.</p>
118
 
 
119
 
 
120
 
<h2>Adding Multiple Items to The Cart</h2>
121
 
 
122
 
<p>By using a multi-dimensional array, as shown below, it is possible to add multiple products to the cart in one action. This is useful in cases where you wish to allow people to select from among several items on the same page.</p>
123
 
 
124
 
 
125
 
<code>
126
 
$data = array(<br />
127
 
 
128
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br />
129
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'id'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; => 'sku_123ABC',<br />
130
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 1,<br />
131
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'price'&nbsp;&nbsp; => 39.95,<br />
132
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'name'&nbsp;&nbsp;&nbsp; => 'T-Shirt',<br />
133
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'options' => array('Size' => 'L', 'Color' => 'Red')<br />
134
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br />
135
 
 
136
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br />
137
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'id'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; => 'sku_567ZYX',<br />
138
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 1,<br />
139
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'price'&nbsp;&nbsp; => 9.95,<br />
140
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'name'&nbsp;&nbsp;&nbsp; => 'Coffee Mug'<br />
141
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br />
142
 
 
143
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br />
144
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'id'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; => 'sku_965QRS',<br />
145
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 1,<br />
146
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'price'&nbsp;&nbsp; => 29.95,<br />
147
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'name'&nbsp;&nbsp;&nbsp; => 'Shot Glass'<br />
148
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<br />
149
 
 
150
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br />
151
 
<br />
152
 
 
153
 
$this->cart->insert($data);
154
 
 
155
 
</code>
156
 
 
157
 
 
158
 
 
159
 
 
160
 
<h2>Displaying the Cart</h2>
161
 
 
162
 
<p>To display the cart you will create a <a href="../general/views.html">view file</a> with code similar to the one shown below.</p>
163
 
 
164
 
<p>Please note that this example uses the <a href="../helpers/form_helper.html">form helper</a>.</p>
165
 
 
166
 
 
167
 
<textarea class="textarea" style="width:100%" cols="50" rows="55">
168
 
&lt;?php echo form_open('path/to/controller/update/function'); ?>
169
 
 
170
 
&lt;table cellpadding="6" cellspacing="1" style="width:100%" border="0">
171
 
 
172
 
&lt;tr>
173
 
  &lt;th>QTY&lt;/th>
174
 
  &lt;th>Item Description&lt;/th>
175
 
  &lt;th style="text-align:right">Item Price&lt;/th>
176
 
  &lt;th style="text-align:right">Sub-Total&lt;/th>
177
 
&lt;/tr>
178
 
 
179
 
&lt;?php $i = 1; ?>
180
 
 
181
 
&lt;?php foreach ($this->cart->contents() as $items): ?>
182
 
 
183
 
        &lt;?php echo form_hidden($i.'[rowid]', $items['rowid']); ?>
184
 
 
185
 
        &lt;tr>
186
 
          &lt;td>&lt;?php echo form_input(array('name' => $i.'[qty]', 'value' => $items['qty'], 'maxlength' => '3', 'size' => '5')); ?>&lt;/td>
187
 
          &lt;td>
188
 
                &lt;?php echo $items['name']; ?>
189
 
 
190
 
                        &lt;?php if ($this->cart->has_options($items['rowid']) == TRUE): ?>
191
 
 
192
 
                                &lt;p>
193
 
                                        &lt;?php foreach ($this->cart->product_options($items['rowid']) as $option_name => $option_value): ?>
194
 
 
195
 
                                                &lt;strong>&lt;?php echo $option_name; ?>:&lt;/strong> &lt;?php echo $option_value; ?>&lt;br />
196
 
 
197
 
                                        &lt;?php endforeach; ?>
198
 
                                &lt;/p>
199
 
 
200
 
                        &lt;?php endif; ?>
201
 
 
202
 
          &lt;/td>
203
 
          &lt;td style="text-align:right">&lt;?php echo $this->cart->format_number($items['price']); ?>&lt;/td>
204
 
          &lt;td style="text-align:right">$&lt;?php echo $this->cart->format_number($items['subtotal']); ?>&lt;/td>
205
 
        &lt;/tr>
206
 
 
207
 
&lt;?php $i++; ?>
208
 
 
209
 
&lt;?php endforeach; ?>
210
 
 
211
 
&lt;tr>
212
 
  &lt;td colspan="2">&nbsp;&lt;/td>
213
 
  &lt;td class="right">&lt;strong>Total&lt;/strong>&lt;/td>
214
 
  &lt;td class="right">$&lt;?php echo $this->cart->format_number($this->cart->total()); ?>&lt;/td>
215
 
&lt;/tr>
216
 
 
217
 
&lt;/table>
218
 
 
219
 
&lt;p>&lt;?php echo form_submit('', 'Update your Cart'); ?>&lt;/p>
220
 
</textarea>
221
 
 
222
 
 
223
 
 
224
 
 
225
 
<h2>Updating The Cart</h2>
226
 
 
227
 
<p>To update the information in your cart, you must pass an array containing the <kbd>Row ID</kbd> and quantity to the <dfn>$this->cart->update()</dfn> function:</p>
228
 
 
229
 
<p class="important"><strong>Note:</strong> If the quantity is set to zero, the item will be removed from the cart.</p>
230
 
 
231
 
<code>
232
 
$data = array(<br />
233
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'rowid' => 'b99ccdf16028f015540f341130b6d8ec',<br />
234
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp; => 3<br />
235
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br />
236
 
<br />
237
 
 
238
 
$this->cart->update($data);
239
 
<br /><br />
240
 
// Or a multi-dimensional array<br /><br />
241
 
$data = array(<br />
242
 
 
243
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br />
244
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'rowid'&nbsp;&nbsp; => 'b99ccdf16028f015540f341130b6d8ec',<br />
245
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 3<br />
246
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br />
247
 
 
248
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br />
249
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'rowid'&nbsp;&nbsp; => 'xw82g9q3r495893iajdh473990rikw23',<br />
250
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 4<br />
251
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br />
252
 
 
253
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br />
254
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'rowid'&nbsp;&nbsp; => 'fh4kdkkkaoe30njgoe92rkdkkobec333',<br />
255
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'qty'&nbsp;&nbsp;&nbsp;&nbsp; => 2<br />
256
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<br />
257
 
 
258
 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br />
259
 
<br />
260
 
 
261
 
$this->cart->update($data);
262
 
 
263
 
 
264
 
 
265
 
 
266
 
</code>
267
 
 
268
 
<p><strong>What is a Row ID?</strong>&nbsp; The <kbd>row ID</kbd> is a unique identifier that is generated by the cart code when an item is added to the cart.  The reason a
269
 
unique ID is created is so that identical products with different options can be managed by the cart.</p>
270
 
 
271
 
<p>For example, let's say someone buys two identical t-shirts (same product ID), but in different sizes. The product ID (and other attributes) will be
272
 
identical for both sizes because it's the same shirt. The only difference will be the size. The cart must therefore have a means of identifying this
273
 
difference so that the two sizes of shirts can be managed independently. It does so by creating a unique "row ID" based on the product ID and any options associated with it.</p>
274
 
 
275
 
<p>In nearly all cases, updating the cart will be something the user does via the "view cart" page, so as a developer, it is unlikely that you will ever have to concern yourself
276
 
with the "row ID", other then making sure your "view cart" page contains this information in a hidden form field, and making sure it gets passed to the update
277
 
function when the update form is submitted. Please examine the construction of the "view cart" page above for more information.</p>
278
 
 
279
 
 
280
 
 
281
 
<p>&nbsp;<br /></p>
282
 
 
283
 
 
284
 
<h1>Function Reference</h1>
285
 
 
286
 
<h2>$this->cart->insert();</h2>
287
 
 
288
 
<p>Permits you to add items to the shopping cart, as outlined above.</p>
289
 
 
290
 
 
291
 
<h2>$this->cart->update();</h2>
292
 
 
293
 
<p>Permits you to update items in the shopping cart, as outlined above.</p>
294
 
 
295
 
 
296
 
<h2>$this->cart->total();</h2>
297
 
 
298
 
<p>Displays the total amount in the cart.</p>
299
 
 
300
 
 
301
 
<h2>$this->cart->total_items();</h2>
302
 
 
303
 
<p>Displays the total number of items in the cart.</p>
304
 
 
305
 
 
306
 
<h2>$this->cart->contents();</h2>
307
 
 
308
 
<p>Returns an array containing everything in the cart.</p>
309
 
 
310
 
 
311
 
 
312
 
<h2>$this->cart->has_options(rowid);</h2>
313
 
 
314
 
<p>Returns TRUE (boolean) if a particular row in the cart contains options. This function is designed to be used in a loop with <dfn>$this->cart->contents()</dfn>, since you must pass the <kbd>rowid</kbd> to this function, as shown in the <dfn>Displaying the Cart</dfn> example above.</p>
315
 
 
316
 
 
317
 
<h2>$this->cart->product_options(rowid);</h2>
318
 
 
319
 
<p>Returns an array of options for a particular product. This function is designed to be used in a loop with <dfn>$this->cart->contents()</dfn>, since you must pass the <kbd>rowid</kbd> to this function, as shown in the <dfn>Displaying the Cart</dfn> example above.</p>
320
 
 
321
 
 
322
 
 
323
 
<h2>$this->cart->destroy();</h2>
324
 
 
325
 
<p>Permits you to destroy the cart. This function will likely be called when you are finished processing the customer's order.</p>
326
 
 
327
 
 
328
 
 
329
 
 
330
 
</div>
331
 
<!-- END CONTENT -->
332
 
 
333
 
 
334
 
<div id="footer">
335
 
<p>
336
 
Previous Topic:&nbsp;&nbsp;<a href="calendar.html">Calendar Class</a>
337
 
&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
338
 
<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
339
 
<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
340
 
Next Topic:&nbsp;&nbsp;<a href="config.html">Config Class</a>
341
 
</p>
342
 
<p><a href="http://codeigniter.com">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006 - 2012 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">EllisLab, Inc.</a></p>
343
 
</div>
344
 
 
345
 
</body>
346
 
</html>
 
 
b'\\ No newline at end of file'