<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>Mior Muhammad Zaki</title>
	
	<link>http://crynobone.com</link>
	<description>PHP &amp; JavaScript Programmer</description>
	<lastBuildDate>Wed, 04 Nov 2009 00:47:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/crynobone" type="application/rss+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">crynobone</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcrynobone" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcrynobone" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcrynobone" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bloglines.com/sub/http://feeds.feedburner.com/crynobone" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcrynobone" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fcrynobone" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcrynobone" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Regular Expression Rules in Form Validation for Ext.CodeIgniter</title>
		<link>http://crynobone.com/regular-expression-rules-in-form-validation-for-ext-codeigniter/</link>
		<comments>http://crynobone.com/regular-expression-rules-in-form-validation-for-ext-codeigniter/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 17:34:45 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Ext.CodeIgniter]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[Regular Expression]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=599</guid>
		<description><![CDATA[Yes, I have a problem with CodeIgniter built-in Form Validation Library, the lack of direct Regular Expression test/rule is a huge turn off for me especially when I need to use Regular Expression to as a rule to verify user input.
There are alternative with the use of &#8220;callback&#8221; to by creating an additional method inside [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/wlmgYroWYfkgtcqmF15egx3Wbv0/0/da"><img src="http://feedads.g.doubleclick.net/~a/wlmgYroWYfkgtcqmF15egx3Wbv0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/wlmgYroWYfkgtcqmF15egx3Wbv0/1/da"><img src="http://feedads.g.doubleclick.net/~a/wlmgYroWYfkgtcqmF15egx3Wbv0/1/di" border="0" ismap="true"></img></a></p><p><img class="alignright size-full wp-image-597" title="logo" src="http://crynobone.com/wp-content/uploads/2009/10/logo.jpg" alt="logo" width="165" height="165" />Yes, I have a problem with CodeIgniter built-in Form Validation Library, the lack of direct Regular Expression test/rule is a huge turn off for me especially when I need to use Regular Expression to as a rule to verify user input.</p>
<p>There are alternative with the use of &#8220;callback&#8221; to by creating an additional method inside your Controller. The solution is good if you have a complex filtering but why bother when all you need to do is a simple RegExp verification. Based on my <a href="http://twitter.com/crynobone/status/5310657643">Twitter status</a>:</p>
<p><span id="more-599"></span><br />
<img class="size-full wp-image-600 alignnone" title="status-5310657643" src="http://crynobone.com/wp-content/uploads/2009/11/status-5310657643.png" alt="status-5310657643" width="565" height="224" /></p>
<p>Based from a reply to the status.</p>
<p><img src="http://crynobone.com/wp-content/uploads/2009/11/reply.png" alt="reply" title="reply" width="584" height="260" class="alignnone size-full wp-image-602" /></p>
<p>I took the challenge of extending Form Validation Library to add support for Regular Expression test. As a result here <a href="http://myci.googlecode.com/svn/trunk/system/application/libraries/MY_Form_validation.php" target="_blank">MY_Form_validation.php</a>. The changes was minimal but since I need to tweak some of the existing method to allow the special character such as | and [ ] to be use in our Regular Expression the LOC for this modify is quite big.</p>
<p>Now you can add rule such as:</p>
<pre name="code" class="php">
$this->form_validation->set_rules('username', 'Username', 'trim|required|expression:/^([a-zA-Z0-9\.\-\_\|]{1,50})$/|xss_clean');
</pre>
<p>As you can see, an additional rule has been set with <code>expression:/^([a-zA-Z0-9\.\-\_\|]{1,50})$/</code>. With this new rule you can safely reject request such as below (with proper error message).</p>
<p><img src="http://crynobone.com/wp-content/uploads/2009/11/error.png" alt="error" title="error" width="431" height="107" class="alignnone size-full wp-image-601" /></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=NBdM3v3EJ9U:MFJqUGzZxnw:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=NBdM3v3EJ9U:MFJqUGzZxnw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=NBdM3v3EJ9U:MFJqUGzZxnw:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=NBdM3v3EJ9U:MFJqUGzZxnw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=NBdM3v3EJ9U:MFJqUGzZxnw:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/regular-expression-rules-in-form-validation-for-ext-codeigniter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing Nura Aesha Safia</title>
		<link>http://crynobone.com/introducing-nura-aesha-safia/</link>
		<comments>http://crynobone.com/introducing-nura-aesha-safia/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 04:20:31 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Asides]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=550</guid>
		<description><![CDATA[
Here&#8217;s my first (and currently only) daughter Nura Aesha Safia binti Mior Muhammad Zaki.
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/nl4w9--Wfd_isQ5twhJlgvEqj1I/0/da"><img src="http://feedads.g.doubleclick.net/~a/nl4w9--Wfd_isQ5twhJlgvEqj1I/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/nl4w9--Wfd_isQ5twhJlgvEqj1I/1/da"><img src="http://feedads.g.doubleclick.net/~a/nl4w9--Wfd_isQ5twhJlgvEqj1I/1/di" border="0" ismap="true"></img></a></p><p><a title="Introducing Nura Aesha Safia by crynobone, on Flickr" href="http://www.flickr.com/photos/crynobone/4068071736/"><img class="aligncenter" src="http://farm4.static.flickr.com/3525/4068071736_a5abdd01d2.jpg" alt="IMG_3931" width="500" height="299" /></a></p>
<p>Here&#8217;s my first (and currently only) daughter <strong>Nura Aesha Safia binti Mior Muhammad Zaki</strong>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=0VRSiwPvK3A:MwMjAnuYPao:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=0VRSiwPvK3A:MwMjAnuYPao:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=0VRSiwPvK3A:MwMjAnuYPao:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=0VRSiwPvK3A:MwMjAnuYPao:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=0VRSiwPvK3A:MwMjAnuYPao:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/introducing-nura-aesha-safia/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CRUD Library for Ext.CodeIgniter: An Example</title>
		<link>http://crynobone.com/crud-library-for-ext-codeigniter-an-example/</link>
		<comments>http://crynobone.com/crud-library-for-ext-codeigniter-an-example/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 10:30:55 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Ext.CodeIgniter]]></category>
		<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=596</guid>
		<description><![CDATA[One of the drawback on CodeIgniter is the Scaffolding Class which is only suitable for testing or development stage. In order to do the same functionality you might find in other PHP Framework for CRUD you have to combine few available libraries in CodeIgniter including Table, Pagination, Form Validation and etc. All the libraries are [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/PWje0KKEuSf994zPwFJNpIcH7P4/0/da"><img src="http://feedads.g.doubleclick.net/~a/PWje0KKEuSf994zPwFJNpIcH7P4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/PWje0KKEuSf994zPwFJNpIcH7P4/1/da"><img src="http://feedads.g.doubleclick.net/~a/PWje0KKEuSf994zPwFJNpIcH7P4/1/di" border="0" ismap="true"></img></a></p><p><img class="alignright size-full wp-image-597" title="logo" src="http://crynobone.com/wp-content/uploads/2009/10/logo.jpg" alt="logo" width="165" height="165" />One of the drawback on CodeIgniter is the Scaffolding Class which is only suitable for testing or development stage. In order to do the same functionality you might find in other PHP Framework for CRUD you have to combine few available libraries in CodeIgniter including Table, Pagination, Form Validation and etc. All the libraries are great but you will end up having to write a long list of function and code to do still CRUD process.</p>
<p>To make the learning process much easier to understand I would actually try to convert <a href="http://net.tutsplus.com/videos/screencasts/codeigniter-from-scratch-day-5-crud/">CodeIgniter From Scratch: Day 5 &#8211; CRUD</a> from <a href="http://net.tutsplus.com/">Nettuts+</a> from using available libraries to Ext.CodeIgniter CRUD Library.</p>
<h3>Requirements and Basic Informations</h3>
<ul>
<li>is based and developed on CodeIgniter 1.7.1, it might work with previous version but please do test it out first.</li>
<li>requires Table, Pagination, Form (Ext.CodeIgniter Library), Form Validation libraries and Form helper.</li>
<li>callback can be optimized with <a href="http://crynobone.com/template-library-for-ext-codeigniter/">Template Library for Ext.CodeIgniter</a>.</li>
<li>your model code can be minimized with ActiveRecord, you may require more works if using raw SQL.</li>
</ul>
<p><span id="more-596"></span></p>
<h3>Disclaimer</h3>
<p>This library is not as simple as implementing using Scaffolding Library for CodeIgniter but more to minimizing your development time to write code in CodeIgniter.</p>
<h3>Getting Started</h3>
<p>To use the Template library, you have to checkout a copy of latest <a href="http://myci.googlecode.com/">Ext.CodeIgniter</a> or grab the following files:</p>
<ul>
<li><a href="http://myci.googlecode.com/svn/trunk/system/application/libraries/CRUD.php">http://myci.googlecode.com/svn/trunk/system/application/libraries/CRUD.php</a></li>
<li><a href="http://myci.googlecode.com/svn/trunk/system/application/libraries/Form.php">http://myci.googlecode.com/svn/trunk/system/application/libraries/Form.php</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=_cRlpk10YUI:ShPQ9LsaAc0:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=_cRlpk10YUI:ShPQ9LsaAc0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=_cRlpk10YUI:ShPQ9LsaAc0:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=_cRlpk10YUI:ShPQ9LsaAc0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=_cRlpk10YUI:ShPQ9LsaAc0:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/crud-library-for-ext-codeigniter-an-example/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>KreativeThemes: Selling Premium WordPress Themes</title>
		<link>http://crynobone.com/kreativethemes-selling-premium-wordpress-themes/</link>
		<comments>http://crynobone.com/kreativethemes-selling-premium-wordpress-themes/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 18:22:21 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Project]]></category>
		<category><![CDATA[Themes]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[KreativeThemes]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=591</guid>
		<description><![CDATA[
KreativeThemes is a collaboration of young creative and talented people in developing and producing WordPress themes (other platforms will join in in the future) of finest quality at affordable prices. It is co-founded by Izuddin Helmi and Amirul Faisyal and backed up by a dedicated team comprises of Ajmal Eylia, Gaddafi, Mohd Huzairy, Nur Fathihah [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/wR7uURkuH8Pl6Y-kuU6oh6iSlt4/0/da"><img src="http://feedads.g.doubleclick.net/~a/wR7uURkuH8Pl6Y-kuU6oh6iSlt4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/wR7uURkuH8Pl6Y-kuU6oh6iSlt4/1/da"><img src="http://feedads.g.doubleclick.net/~a/wR7uURkuH8Pl6Y-kuU6oh6iSlt4/1/di" border="0" ismap="true"></img></a></p><p><a href="http://crynobone.com/wp-content/uploads/2009/10/kt.jpg"></a><a href="http://kreativethemes.com"><img class="aligncenter size-full wp-image-592" title="kt" src="http://crynobone.com/wp-content/uploads/2009/10/kt.jpg" alt="kt" width="580" height="317" /></a></p>
<p><a href="http://kreativethemes.com">KreativeThemes</a> is a collaboration of young creative and talented people in developing and producing WordPress themes (other platforms will join in in the future) of finest quality at affordable prices. It is co-founded by <a href="http://izuddinhelmi.com/">Izuddin Helmi</a> and <a href="http://jurnalsem.com">Amirul Faisyal</a> and backed up by a dedicated team comprises of <a href="http://ajmaleylia.com/">Ajmal Eylia</a>, <a href="http://flisterz.com/">Gaddafi</a>, <a href="http://mohdhuzairy.blogspot.com">Mohd Huzairy</a>, <a href="http://hellofath.com/">Nur Fathihah</a> and me.</p>
<p><span id="more-591"></span></p>
<p><a href="http://www.kreativethemes.com/kreativethemes-launch/">During the launch</a>, KreativeThemes released <a href="http://www.kreativethemes.com/phanatics/">Phanatics</a> and <a href="http://www.kreativethemes.com/viva-licious/">Viva-licious</a> as premium themes while <a href="http://www.kreativethemes.com/furvious/">Furvious</a> as free themes. Pricing for the themes is based on following structure (do know the price include support for the theme).</p>
<p><a href="http://crynobone.com/wp-content/uploads/2009/10/hargakt1.gif"><img class="aligncenter size-full wp-image-594" title="hargakt" src="http://crynobone.com/wp-content/uploads/2009/10/hargakt1.gif" alt="hargakt" width="573" height="355" /></a></p>
<p>You can test drive all themes and purchase or download the one you desired at KreativeThemes official website. More themes will be developed and released in each month so you better be alert and check us out every now and then.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=mgcNE3HtqYY:Z2lWOJFKtlE:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=mgcNE3HtqYY:Z2lWOJFKtlE:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=mgcNE3HtqYY:Z2lWOJFKtlE:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=mgcNE3HtqYY:Z2lWOJFKtlE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=mgcNE3HtqYY:Z2lWOJFKtlE:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/kreativethemes-selling-premium-wordpress-themes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>3F Aidilfitri Open House 2009</title>
		<link>http://crynobone.com/3faidilfitri-open-house-2009/</link>
		<comments>http://crynobone.com/3faidilfitri-open-house-2009/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 18:01:19 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Asides]]></category>
		<category><![CDATA[Flickr]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=590</guid>
		<description><![CDATA[

View full photoset 3F Aidilfitri 2009 Open House @ Flickr
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/iIEt9LgaQMa1UaAAlD7OKvXq574/0/da"><img src="http://feedads.g.doubleclick.net/~a/iIEt9LgaQMa1UaAAlD7OKvXq574/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/iIEt9LgaQMa1UaAAlD7OKvXq574/1/da"><img src="http://feedads.g.doubleclick.net/~a/iIEt9LgaQMa1UaAAlD7OKvXq574/1/di" border="0" ismap="true"></img></a></p><p style="text-align: center;"><a title="Bamboo Fence by crynobone, on Flickr" href="http://www.flickr.com/photos/crynobone/4021870897/"><img class="aligncenter" src="http://farm3.static.flickr.com/2458/4021870897_8107c8e2b3.jpg" alt="Bamboo Fence" width="500" height="334" /></a></p>
<p style="text-align: center;"><a title="Foods for everyone by crynobone, on Flickr" href="http://www.flickr.com/photos/crynobone/4022433032/"><img class="aligncenter" src="http://farm3.static.flickr.com/2788/4022433032_ff646317a0.jpg" alt="Foods for everyone" width="500" height="334" /></a></p>
<p>View full photoset <a href="http://www.flickr.com/photos/crynobone/sets/72157622609260352/">3F Aidilfitri 2009 Open House</a> @ Flickr</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=g6lezyg4YK8:Duh7DBE-qjs:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=g6lezyg4YK8:Duh7DBE-qjs:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=g6lezyg4YK8:Duh7DBE-qjs:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=g6lezyg4YK8:Duh7DBE-qjs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=g6lezyg4YK8:Duh7DBE-qjs:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/3faidilfitri-open-house-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SEO Friendly WordPress Title</title>
		<link>http://crynobone.com/seo-friendly-wordpress-title/</link>
		<comments>http://crynobone.com/seo-friendly-wordpress-title/#comments</comments>
		<pubDate>Sun, 04 Oct 2009 12:03:15 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=551</guid>
		<description><![CDATA[Here a good structure for WordPress title instead of using the standard option, most theme I been using usually used this option.
&#60;title&#62;&#60;?php wp_title('--',true,'right'); ?&#62; &#60;?php bloginfo('name');?&#62;&#60;/title&#62;
I prefer a more informative title display to improve SEO for your blog/website.
&#60;?php
function seo_title()
{
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    wp_title('&#38;laquo;', true, 'right');

 [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/FKXjR8GNKSRMSupOcDiaZCrZ1mc/0/da"><img src="http://feedads.g.doubleclick.net/~a/FKXjR8GNKSRMSupOcDiaZCrZ1mc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/FKXjR8GNKSRMSupOcDiaZCrZ1mc/1/da"><img src="http://feedads.g.doubleclick.net/~a/FKXjR8GNKSRMSupOcDiaZCrZ1mc/1/di" border="0" ismap="true"></img></a></p><p>Here a good structure for WordPress title instead of using the standard option, most theme I been using usually used this option.</p>
<pre name="code" class="php">&lt;title&gt;&lt;?php wp_title('--',true,'right'); ?&gt; &lt;?php bloginfo('name');?&gt;&lt;/title&gt;</pre>
<p>I prefer a more informative title display to improve SEO for your blog/website.</p>
<pre name="code" class="php">&lt;?php
function seo_title()
{
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    wp_title('&amp;laquo;', true, 'right');

    if ($paged &gt; 1)
    {
        echo ' Page ' . $paged . ' &amp;mdash;';
    }

    echo ' ';
    bloginfo('name');

    if (is_home() &amp;&amp; $paged === 1)
    {
        echo ' &amp;mdash; ';
        bloginfo('description');
    }
}
?&gt;
&lt;title&gt;&lt;?php seo_title(); ?&gt;&lt;/title&gt;</pre>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 57px; width: 1px; height: 1px;">
<pre class="php"></pre>
</div>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=ldaNTP7SCwo:zKZ7wVa93kg:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=ldaNTP7SCwo:zKZ7wVa93kg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=ldaNTP7SCwo:zKZ7wVa93kg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=ldaNTP7SCwo:zKZ7wVa93kg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=ldaNTP7SCwo:zKZ7wVa93kg:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/seo-friendly-wordpress-title/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Convert Currency to The Nearest RM0.05</title>
		<link>http://crynobone.com/convert-currency-to-the-nearest-5-cent/</link>
		<comments>http://crynobone.com/convert-currency-to-the-nearest-5-cent/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 14:15:44 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Currency]]></category>
		<category><![CDATA[Malaysia]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=548</guid>
		<description><![CDATA[Malaysia recently introduce a rounding mechanism for trading to remove the need for 1 cent in the market, but with this new implementation it cause us web developer more task to make it work with our current application.
The Rounding Mechanism is a method whereby the total bill amount (including goods and services subject to tax) [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/HGvMkxcOZTxSCGuzS4X1sbvxkus/0/da"><img src="http://feedads.g.doubleclick.net/~a/HGvMkxcOZTxSCGuzS4X1sbvxkus/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/HGvMkxcOZTxSCGuzS4X1sbvxkus/1/da"><img src="http://feedads.g.doubleclick.net/~a/HGvMkxcOZTxSCGuzS4X1sbvxkus/1/di" border="0" ismap="true"></img></a></p><p>Malaysia recently introduce a rounding mechanism for trading to remove the need for 1 cent in the market, but with this new implementation it cause us web developer more task to make it work with our current application.</p>
<blockquote><p>The Rounding Mechanism is a method whereby the <strong>total bill amount </strong>(including goods and services subject to tax) is rounded upwards or downwards to the nearest multiple of 5 sen. In this regard, total bill amount that ends in <strong>1, 2, 6 and 7 </strong> sen will be rounded <strong>down </strong> while <strong>3, 4, 8 and 9 </strong> sen will be rounded <strong>up </strong> to the nearest multiple of 5 sen.</p>
<p>For example, a total bill amounting to RM82.01 will be rounded down to RM82.00. If it amounts to RM82.04, it will be rounded up to RM82.05.</p>
<p>Source <a href="http://www.bnm.gov.my/index.php?ch=209&amp;pg=657&amp;ac=568">BNM Rounding Mechanism</a></p></blockquote>
<p><span id="more-548"></span><br />
Here&#8217;s two different version if you ever need it:</p>
<h3>PHP</h3>
<p>Credit <a href="http://www.php.com.my/tips/penggenapan-kepada-5-sen-terdekat/">Resipi PHP</a></p>
<pre name="code" class="php">function nearest_5cent($val) {
    return round($val*20)/20;
}</pre>
<h3>JavaScript</h3>
<pre name="code" class="js">var nearest_5cent = function(val) {
	return (Math.round(val*20)/20);
}</pre>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Hgp8cSEop-s:AsBdxwiDvUQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Hgp8cSEop-s:AsBdxwiDvUQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Hgp8cSEop-s:AsBdxwiDvUQ:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Hgp8cSEop-s:AsBdxwiDvUQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Hgp8cSEop-s:AsBdxwiDvUQ:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/convert-currency-to-the-nearest-5-cent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing Google Chrome Frame</title>
		<link>http://crynobone.com/introducing-google-chrome-frame/</link>
		<comments>http://crynobone.com/introducing-google-chrome-frame/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 06:00:36 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Software & OS]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[Internet Explorer]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=547</guid>
		<description><![CDATA[Google Chrome Frame is an early-stage open source plug-in that seamlessly brings Google Chrome&#8217;s open web technologies and speedy JavaScript engine to Internet Explorer. With Google Chrome Frame, you can:

 Start using open web technologies &#8211; like the HTML5 canvas tag &#8211; right away, even technologies that aren&#8217;t yet supported in Internet Explorer 6, 7, [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/0HVOnw1DgPN6SAhRkrXFBa9zIb8/0/da"><img src="http://feedads.g.doubleclick.net/~a/0HVOnw1DgPN6SAhRkrXFBa9zIb8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/0HVOnw1DgPN6SAhRkrXFBa9zIb8/1/da"><img src="http://feedads.g.doubleclick.net/~a/0HVOnw1DgPN6SAhRkrXFBa9zIb8/1/di" border="0" ismap="true"></img></a></p><blockquote><p><a href="http://code.google.com/chrome/chromeframe/">Google Chrome Frame</a> is an early-stage open source plug-in that seamlessly brings Google Chrome&#8217;s open web technologies and speedy JavaScript engine to Internet Explorer. With Google Chrome Frame, you can:</p>
<ul>
<li> Start using open web technologies &#8211; like the HTML5 <code>canvas</code> tag &#8211; right away, even technologies that aren&#8217;t yet supported in Internet Explorer 6, 7, or 8.</li>
<li> Take advantage of JavaScript performance improvements to make your apps faster and more responsive.</li>
</ul>
</blockquote>
<p><span id="more-547"></span></p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="350" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/sjW0Bchdj-w&amp;feature" /><embed type="application/x-shockwave-flash" width="425" height="350" src="http://www.youtube.com/v/sjW0Bchdj-w&amp;feature"></embed></object></p>
<p>With only 1KB+ It would cut-down development time to debug and make things work in Internet Explorer, no more CSS hack or JavaScript hack to recreate the same feature we would be able to gain from other modern browser. But before I jump into the Google Chrome Frame bandwagon I would like to see some questions answered:</p>
<ul>
<li>Does it carry Internet Explorer original <em>User Agent string</em> or does it have it&#8217;s own?<em><br />
</em></li>
<li>Does it still check for <a href="http://www.quirksmode.org/css/condcom.html">CSS Conditional Comments</a>?</li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=liWM3qzdjKE:GIhHRvD6-sI:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=liWM3qzdjKE:GIhHRvD6-sI:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=liWM3qzdjKE:GIhHRvD6-sI:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=liWM3qzdjKE:GIhHRvD6-sI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=liWM3qzdjKE:GIhHRvD6-sI:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/introducing-google-chrome-frame/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to smile?</title>
		<link>http://crynobone.com/how-to-smile/</link>
		<comments>http://crynobone.com/how-to-smile/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 10:45:18 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Asides]]></category>
		<category><![CDATA[Flickr]]></category>

		<guid isPermaLink="false">http://crynobone.com/how-to-smile/</guid>
		<description><![CDATA[

This is a random post&#8230; visit my flickr photostream for more pictures.
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/UmB4vn2DSzgaWajcerKEO5xNEsM/0/da"><img src="http://feedads.g.doubleclick.net/~a/UmB4vn2DSzgaWajcerKEO5xNEsM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/UmB4vn2DSzgaWajcerKEO5xNEsM/1/da"><img src="http://feedads.g.doubleclick.net/~a/UmB4vn2DSzgaWajcerKEO5xNEsM/1/di" border="0" ismap="true"></img></a></p><div class="flickr-photo"><a title="photo sharing" href="http://www.flickr.com/photos/crynobone/3833484945/"></a></div>
<p style="text-align: center;"><img src="http://farm4.static.flickr.com/3493/3833484945_8009a87496.jpg" alt="" /></p>
<p>This is a random post&#8230; visit my <a href="http://flickr.com/photos/crynobone">flickr photostream</a> for more pictures.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=n2H4Bu0PXP0:TmBsVqbUZmA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=n2H4Bu0PXP0:TmBsVqbUZmA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=n2H4Bu0PXP0:TmBsVqbUZmA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=n2H4Bu0PXP0:TmBsVqbUZmA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=n2H4Bu0PXP0:TmBsVqbUZmA:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/how-to-smile/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Template Library for Ext.CodeIgniter</title>
		<link>http://crynobone.com/template-library-for-ext-codeigniter/</link>
		<comments>http://crynobone.com/template-library-for-ext-codeigniter/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 03:38:07 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Ext.CodeIgniter]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=535</guid>
		<description><![CDATA[
For someone who spent 3 years maintaining my own PHP Framework I find it hard to understand why CodeIgniter bundle in a Template Library. There are actually a few good 3rd party Template Engine which you can find for CodeIgniter but let me share with you a port over Template Library for my so call [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/6tV_up5DYhn6NYgkVrPRQvQI1ic/0/da"><img src="http://feedads.g.doubleclick.net/~a/6tV_up5DYhn6NYgkVrPRQvQI1ic/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/6tV_up5DYhn6NYgkVrPRQvQI1ic/1/da"><img src="http://feedads.g.doubleclick.net/~a/6tV_up5DYhn6NYgkVrPRQvQI1ic/1/di" border="0" ismap="true"></img></a></p><p><img src="http://crynobone.com/wp-content/uploads/2009/10/logo.jpg" alt="logo" title="logo" width="165" height="165" class="alignright size-full wp-image-597" /></p>
<p>For someone who spent 3 years maintaining my own PHP Framework I find it hard to understand why CodeIgniter bundle in a Template Library. There are actually a few good 3rd party Template Engine which you can find for CodeIgniter but let me share with you a port over Template Library for my so call own PHP Framework.</p>
<h3>Requirements and Basic Informations</h3>
<ul>
<li>is based and developed on CodeIgniter 1.7.1, it might work with previous version but please do test it out first.</li>
<li>the library is build on top of Loader and Output Library allowing you to fully utilize caching, profiler output etc.</li>
<li>support Parser Library.</li>
</ul>
<p><span id="more-535"></span></p>
<h3>Getting Started</h3>
<p>To use the Template library, you have to checkout a copy of latest <a href="http://myci.googlecode.com">Ext.CodeIgniter</a> or grab the following files:</p>
<ul>
<li><a href="http://myci.googlecode.com/svn/trunk/system/application/libraries/Template.php">http://myci.googlecode.com/svn/trunk/system/application/libraries/Template.php</a></li>
<li><a href="http://myci.googlecode.com/svn/trunk/system/application/config/application.php">http://myci.googlecode.com/svn/trunk/system/application/config/application.php</a></li>
</ul>
<h3>Setup Template Folder</h3>
<p>You will need to create a folder <code>./public/styles/default/</code> at the root folder of your CodeIgniter installation. A terminal command equivalent to this is:</p>
<pre class="bash">&gt; mkdir -p public/styles/default</pre>
<h3>Setup Template File</h3>
<p>For this example let just make a simple template, by default the Template Class will look for &#8220;index.html&#8221;.</p>
<pre name="code" class="html">&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt;
&lt;html&gt;
    &lt;head&gt;
        &lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"&gt;
        &lt;title&gt;{{PAGE-TITLE}}&lt;/title&gt;
        &lt;link href="{{STYLE-URI}}css/all.css" media="all" rel="stylesheet" type="text/css" /&gt;
    &lt;/head&gt;
    &lt;body&gt;
        &lt;div id="header"&gt;
            &lt;h1&gt;{{TITLE}}&lt;/h1&gt;
            &lt;div id="navigation"&gt;{{NAVIGATION}}&lt;/div&gt;
        &lt;/div&gt;
        &lt;div id="content"&gt;
            {{CONTENT}}
        &lt;/div&gt;
        &lt;div id="footer"&gt;
            &lt;p&gt;{{FOOTER}}&lt;/p&gt;
        &lt;/div&gt;
    &lt;/body&gt;
&lt;/html&gt;</pre>
<h4>Possible Parse Keyword</h4>
<table border="0">
<thead>
<tr>
<th>Keyword</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{TITLE}}</td>
<td>Application/Site Title.</td>
</tr>
<tr>
<td>{{PAGE-NAME}}</td>
<td>Current Page Title</td>
</tr>
<tr>
<td>{{PAGE-TITLE}}</td>
<td>Current Page Title and Application/Site Title.</td>
</tr>
<tr>
<td>{{URI}}</td>
<td>Equivalent to <code>current_url()</code></td>
</tr>
<tr>
<td>{{BASE-URI}}</td>
<td>Equivalent to <code>base_url()</code></td>
</tr>
<tr>
<td>{{INDEX-URI}}</td>
<td>Equivalent to <code>site_url()</code></td>
</tr>
<tr>
<td>{{STYLE-URI}}</td>
<td>Generate full url path to current active template</td>
</tr>
<tr>
<td>{{SCRIPT-URI}}</td>
<td>Generate full url path to script folder: <code>./public/scripts</code></td>
</tr>
<tr>
<td>{{NAVIGATION}}</td>
<td>Navigation group</td>
</tr>
<tr>
<td>{{HEADER}}</td>
<td>Header group</td>
</tr>
<tr>
<td>{{CONTENT}}</td>
<td>Content group</td>
</tr>
<tr>
<td>{{SIDEBAR}}</td>
<td>Sidebar group</td>
</tr>
<tr>
<td>{{FOOTER}}</td>
<td>Footer group</td>
</tr>
</tbody>
</table>
<h3>Initializing the Template Class</h3>
<p>he following code loads and initializes the template class based on your configuration settings</p>
<pre name="code" class="php">$this-&gt;load-&gt;library('Template');</pre>
<h3>Configuration</h3>
<p>Open <code>system/application/config/application.php</code> and go to line 13 and 24.</p>
<pre name="code" class="php">/*
|--------------------------------------------------------------------------
| Base Site Name
|--------------------------------------------------------------------------
|
| Name of your site/application, e.g:
|
|    My First Website
|
*/
$config['site_name'] = 'AdsMalaya';

/*
|--------------------------------------------------------------------------
| Template Option
|--------------------------------------------------------------------------
|
| Enable you to configure template option
| Default template: &lt;your-site&gt;/public/styles/&lt;theme&gt;/&lt;filename&gt;.html
*/
$config['template']['theme'] = 'default';
$config['template']['filename'] = 'index.html';</pre>
<p>Here you can modify the title of your application or site and the folder and filename of the default template.</p>
<h3>$this-&gt;ui-&gt;set_output()</h3>
<p>There are 3 possible output type: html (default), text or json (require <code>json_encode</code> to be enabled)</p>
<pre name="code" class="php">$this-&gt;ui-&gt;set_output('json');</pre>
<p>Only html output will load the template file.</p>
<h3>$this-&gt;ui-&gt;set_title()</h3>
<pre name="code" class="php">$this-&gt;ui-&gt;set_title('Example Page');</pre>
<p>The function will only set page title, while application/site title is only editable through the configuration file.</p>
<h3>$this-&gt;ui-&gt;set_template()</h3>
<pre name="code" class="php">$this-&gt;ui-&gt;set_template('feedmalaya');</pre>
<p>The template engine will use folder <code>./public/styles/feedmalaya/</code> instead of the one specified in the configuration file.</p>
<h3>$this-&gt;ui-&gt;set_file()</h3>
<pre name="code" class="php">$this-&gt;ui-&gt;set_file('site.html');</pre>
<p>There are time when you need to have different set of layout but using the in the same theme.</p>
<h3>$this-&gt;ui-&gt;data()</h3>
<p>Set output for text or json. Here an example how to use it.</p>
<pre name="code" class="php">$data = array (
    'success' =&gt; TRUE,
    'text' =&gt; 'Some text'
);
$this-&gt;ui-&gt;set_output('json');
$this-&gt;ui-&gt;data($data);
$this-&gt;ui-&gt;render();</pre>
<h3>$this-&gt;ui-&gt;view(&#8217;filename&#8217;, $data, $group)</h3>
<p>The method is almost identical to <code>$this-&gt;load-&gt;view</code> with the exception of the third parameter.</p>
<pre name="code" class="php">$data = array (
'success' =&gt; TRUE,
'text' =&gt; 'Some text'
);
$this-&gt;ui-&gt;view('myfile', $data, 'sidebar');
// will render to sidebar
$this-&gt;ui-&gt;render();</pre>
<p>You can embed the view to any of the following group:</p>
<ul>
<li>header</li>
<li>navigation</li>
<li>content (default)</li>
<li>sidebar</li>
<li>footer</li>
</ul>
<h3>$this-&gt;ui-&gt;append(&#8217;some text&#8217;, $group);</h3>
<p>Append existing template group with some text.</p>
<pre name="code" class="php">$heading = heading('Hello world', 2);
$this-&gt;ui-&gt;append($heading);</pre>
<h3>$this-&gt;ui-&gt;prepend(&#8217;some text&#8217;, $group);</h3>
<p>Prepend existing template group with some text.</p>
<pre name="code" class="php">$heading = heading('&amp;copy; CodeIgniter', 2);
$this-&gt;ui-&gt;prepend($heading, 'footer');</pre>
<h3>Conclusion</h3>
<p>How you can make use of it as I made in my project. If you manage to fine any bug please <a href="http://code.google.com/p/myci/issues/list">report it to us</a>, Thank you.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Sc2ZQw9l-Uw:dsZdvRpsRHY:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Sc2ZQw9l-Uw:dsZdvRpsRHY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Sc2ZQw9l-Uw:dsZdvRpsRHY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=Sc2ZQw9l-Uw:dsZdvRpsRHY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=Sc2ZQw9l-Uw:dsZdvRpsRHY:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/template-library-for-ext-codeigniter/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>links for 2009-08-16</title>
		<link>http://crynobone.com/links-for-2009-08-16/</link>
		<comments>http://crynobone.com/links-for-2009-08-16/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 18:45:46 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Daily Links]]></category>

		<guid isPermaLink="false">http://crynobone.com/links-for-2009-08-16/</guid>
		<description><![CDATA[The three types of programmers
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/lAuDZVAvc3mqCziiBIuC3sBeh_g/0/da"><img src="http://feedads.g.doubleclick.net/~a/lAuDZVAvc3mqCziiBIuC3sBeh_g/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/lAuDZVAvc3mqCziiBIuC3sBeh_g/1/da"><img src="http://feedads.g.doubleclick.net/~a/lAuDZVAvc3mqCziiBIuC3sBeh_g/1/di" border="0" ismap="true"></img></a></p><p><a href="http://codeutopia.net/blog/2009/08/09/the-three-types-of-programmers/">The three types of programmers</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HjvcXUh1uQE:iG3C3fYAcmg:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HjvcXUh1uQE:iG3C3fYAcmg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HjvcXUh1uQE:iG3C3fYAcmg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HjvcXUh1uQE:iG3C3fYAcmg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HjvcXUh1uQE:iG3C3fYAcmg:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/links-for-2009-08-16/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>links for 2009-07-17</title>
		<link>http://crynobone.com/links-for-2009-07-17/</link>
		<comments>http://crynobone.com/links-for-2009-07-17/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 18:46:31 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Daily Links]]></category>

		<guid isPermaLink="false">http://crynobone.com/links-for-2009-07-17/</guid>
		<description><![CDATA[Authenticating Users With Facebook Connect and Google Friend Connect, 10 Tips for New iPhone Developers and 10 Essential SQL Tips for Developers
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/hBNXqpdpFmkDFMameF5TpaJtI6Y/0/da"><img src="http://feedads.g.doubleclick.net/~a/hBNXqpdpFmkDFMameF5TpaJtI6Y/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/hBNXqpdpFmkDFMameF5TpaJtI6Y/1/da"><img src="http://feedads.g.doubleclick.net/~a/hBNXqpdpFmkDFMameF5TpaJtI6Y/1/di" border="0" ismap="true"></img></a></p><p><a href="http://net.tutsplus.com/tutorials/other/authenticating-users-with-facebook-connect-and-google-friend-connect/">Authenticating Users With Facebook Connect and Google Friend Connect</a>, <a href="http://net.tutsplus.com/tutorials/other/10-tips-for-new-iphone-developers/">10 Tips for New iPhone Developers</a> and <a href="http://net.tutsplus.com/tutorials/other/10-essential-sql-tips-for-developers/">10 Essential SQL Tips for Developers</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=pQ2UnF5tGcM:ofkAC9VVhWY:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=pQ2UnF5tGcM:ofkAC9VVhWY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=pQ2UnF5tGcM:ofkAC9VVhWY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=pQ2UnF5tGcM:ofkAC9VVhWY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=pQ2UnF5tGcM:ofkAC9VVhWY:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/links-for-2009-07-17/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Database Table Prefix in CodeIgniter</title>
		<link>http://crynobone.com/database-table-prefix-in-codeigniter/</link>
		<comments>http://crynobone.com/database-table-prefix-in-codeigniter/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 12:20:06 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=524</guid>
		<description><![CDATA[I must say one of the main reason why I started to look into ActiveRecord for CodeIgniter was the availability to use database table name prefix.
&#124;    ['dbprefix'] You can add an optional prefix, which will be added
&#124;                [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Y0LzInYo9JOO9Ut1O0Srnonmitg/0/da"><img src="http://feedads.g.doubleclick.net/~a/Y0LzInYo9JOO9Ut1O0Srnonmitg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Y0LzInYo9JOO9Ut1O0Srnonmitg/1/da"><img src="http://feedads.g.doubleclick.net/~a/Y0LzInYo9JOO9Ut1O0Srnonmitg/1/di" border="0" ismap="true"></img></a></p><p>I must say one of the main reason why I started to look into ActiveRecord for CodeIgniter was the availability to use database table name prefix.</p>
<pre name="code" class="php">|    ['dbprefix'] You can add an optional prefix, which will be added
|                 to the table name when using the  Active Record class
$db['default']['dbprefix'] = "feed_";</pre>
<p>For example: TABLE <em>feed_item</em></p>
<pre name="code" class="php">$this-&gt;db-&gt;get('item');</pre>
<p>Many might not know that you can also use it with normal database query using <code>'swap_pre'</code>. In <code>./system/application/config/database.php</code></p>
<pre name="code" class="php">|    ['dbprefix'] You can add an optional prefix, which will be added
|                 to the table name when using the  Active Record class
$db['default']['dbprefix'] = "feed_";
$db['default']['swap_pre'] = "{PRE}";</pre>
<p>So now you can actually use.</p>
<pre name="code" class="php">$sql = "SELECT * FROM {PRE}item";
$query = $this-&gt;db-&gt;query($sql);</pre>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=WkiBhP4k_Xc:aQOJVF5JzWM:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=WkiBhP4k_Xc:aQOJVF5JzWM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=WkiBhP4k_Xc:aQOJVF5JzWM:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=WkiBhP4k_Xc:aQOJVF5JzWM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=WkiBhP4k_Xc:aQOJVF5JzWM:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/database-table-prefix-in-codeigniter/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>UPDATE on SELECT With MySQL</title>
		<link>http://crynobone.com/update-on-select-with-mysql/</link>
		<comments>http://crynobone.com/update-on-select-with-mysql/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 03:00:53 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=523</guid>
		<description><![CDATA[Previously if there a need to something like this, I would have definitely create a temporary tool using PHP to automatically loop a SELECT and UPDATE each field inside the loop, for example:
$sql = "SELECT * FROM item";
$query = $this-&#62;db-&#62;query($sql);
foreach( $query-&#62;result_array() as $row ) :
    $this-&#62;db-&#62;query("UPDATE relationship
      [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/SObKHBurIcqc24hIwgbky6X5o6I/0/da"><img src="http://feedads.g.doubleclick.net/~a/SObKHBurIcqc24hIwgbky6X5o6I/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/SObKHBurIcqc24hIwgbky6X5o6I/1/da"><img src="http://feedads.g.doubleclick.net/~a/SObKHBurIcqc24hIwgbky6X5o6I/1/di" border="0" ismap="true"></img></a></p><p>Previously if there a need to something like this, I would have definitely create a temporary tool using PHP to automatically loop a SELECT and UPDATE each field inside the loop, for example:</p>
<pre name="code" class="sql">$sql = "SELECT * FROM item";
$query = $this-&gt;db-&gt;query($sql);
foreach( $query-&gt;result_array() as $row ) :
    $this-&gt;db-&gt;query("UPDATE relationship
        SET rel_date=?
        WHERE (rel_value=? AND rel_type=1)", array(
        $row['item_datetime'],
        $row['item_id']
    ));
endforeach;</pre>
<p>This actually can be simplify using only MySQL query such as:</p>
<pre name="code" class="sql">UPDATE relationship r, item i
    SET r.rel_date=i.item_datetime
    WHERE (r.rel_value=i.item_id AND r.rel_type=1)</pre>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=MSNhUnEqmBQ:GZy0o3VMllc:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=MSNhUnEqmBQ:GZy0o3VMllc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=MSNhUnEqmBQ:GZy0o3VMllc:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=MSNhUnEqmBQ:GZy0o3VMllc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=MSNhUnEqmBQ:GZy0o3VMllc:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/update-on-select-with-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript Rounding to The Next Nearest Digit Number</title>
		<link>http://crynobone.com/javascript-rounding-to-the-next-nearest-digit-number/</link>
		<comments>http://crynobone.com/javascript-rounding-to-the-next-nearest-digit-number/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 04:42:28 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=522</guid>
		<description><![CDATA[This is actually just a modification from JavaScript Round To Nearest Number by Talk in Code. Instead of getting the nearest digit, we will actually get the rounding to the next nearest number.
function roundNextNearest(num, acc) {
    if ( acc &#60; 0 ) {
        return Math.round(num*acc)/acc;
 [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/82l6EIzY5i_qxN1HrnY1TEN23c4/0/da"><img src="http://feedads.g.doubleclick.net/~a/82l6EIzY5i_qxN1HrnY1TEN23c4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/82l6EIzY5i_qxN1HrnY1TEN23c4/1/da"><img src="http://feedads.g.doubleclick.net/~a/82l6EIzY5i_qxN1HrnY1TEN23c4/1/di" border="0" ismap="true"></img></a></p><p>This is actually just a modification from <a href="http://www.talkincode.com/javascript-round-to-nearest-number-1101.html">JavaScript Round To Nearest Number</a> by <a href="http://www.talkincode.com">Talk in Code</a>. Instead of getting the nearest digit, we will actually get the rounding to the next nearest number.</p>
<pre name="code" class="javascript">function roundNextNearest(num, acc) {
    if ( acc &lt; 0 ) {
        return Math.round(num*acc)/acc;
    } else {
        var value = Math.round(num/acc)*acc;
        if (value &lt; num) {
            value += acc;
        }
        return value;
}</pre>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=z-QthiGeMNw:kuBx2GZfEG0:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=z-QthiGeMNw:kuBx2GZfEG0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=z-QthiGeMNw:kuBx2GZfEG0:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=z-QthiGeMNw:kuBx2GZfEG0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=z-QthiGeMNw:kuBx2GZfEG0:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/javascript-rounding-to-the-next-nearest-digit-number/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>links for 2009-06-30</title>
		<link>http://crynobone.com/links-for-2009-06-30/</link>
		<comments>http://crynobone.com/links-for-2009-06-30/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 03:44:28 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Daily Links]]></category>

		<guid isPermaLink="false">http://crynobone.com/links-for-2009-06-30/</guid>
		<description><![CDATA[How to Style an Application Like Facebook, How to Integrate with Facebook Connect and Facebook Developer: JavaScript Client Library
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/DMsBxX6DB_jJsCB-0BXGCdvpUzE/0/da"><img src="http://feedads.g.doubleclick.net/~a/DMsBxX6DB_jJsCB-0BXGCdvpUzE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/DMsBxX6DB_jJsCB-0BXGCdvpUzE/1/da"><img src="http://feedads.g.doubleclick.net/~a/DMsBxX6DB_jJsCB-0BXGCdvpUzE/1/di" border="0" ismap="true"></img></a></p><p><a href="http://www.devtacular.com/articles/bkonrad/how-to-style-an-application-like-facebook/">How to Style an Application Like Facebook</a>, <a href="http://www.devtacular.com/articles/bkonrad/how-to-integrate-with-facebook-connect/">How to Integrate with Facebook Connect</a> and <a href="http://wiki.developers.facebook.com/index.php/JavaScript_Client_Library">Facebook Developer: JavaScript Client Library</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=YDn1iNeHz50:hTq8Pb_xTFY:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=YDn1iNeHz50:hTq8Pb_xTFY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=YDn1iNeHz50:hTq8Pb_xTFY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=YDn1iNeHz50:hTq8Pb_xTFY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=YDn1iNeHz50:hTq8Pb_xTFY:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/links-for-2009-06-30/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>links for 2009-06-26</title>
		<link>http://crynobone.com/links-for-2009-06-26/</link>
		<comments>http://crynobone.com/links-for-2009-06-26/#comments</comments>
		<pubDate>Fri, 26 Jun 2009 18:45:33 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Daily Links]]></category>

		<guid isPermaLink="false">http://crynobone.com/links-for-2009-06-26/</guid>
		<description><![CDATA[30 Useful PHP Classes and Components, 10 great articles for optimizing MySQL queries and Code Refactoring Guidelines
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Ak5UWaR1-Gic5yrkjm97gJF0fKM/0/da"><img src="http://feedads.g.doubleclick.net/~a/Ak5UWaR1-Gic5yrkjm97gJF0fKM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Ak5UWaR1-Gic5yrkjm97gJF0fKM/1/da"><img src="http://feedads.g.doubleclick.net/~a/Ak5UWaR1-Gic5yrkjm97gJF0fKM/1/di" border="0" ismap="true"></img></a></p><p><a href="http://blog.fedecarg.com/2008/05/29/30-useful-php-classes-and-components/">30 Useful PHP Classes and Components</a>, <a href="http://blog.fedecarg.com/2008/06/12/10-great-articles-for-optimizing-mysql-queries/">10 great articles for optimizing MySQL queries</a> and <a href="http://blog.fedecarg.com/2008/09/14/code-refactoring-guidelines/">Code Refactoring Guidelines</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=cwVk3fLSzvs:UB7EZb_SnPU:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=cwVk3fLSzvs:UB7EZb_SnPU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=cwVk3fLSzvs:UB7EZb_SnPU:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=cwVk3fLSzvs:UB7EZb_SnPU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=cwVk3fLSzvs:UB7EZb_SnPU:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/links-for-2009-06-26/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>links for 2009-06-24</title>
		<link>http://crynobone.com/links-for-2009-06-24/</link>
		<comments>http://crynobone.com/links-for-2009-06-24/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 06:45:55 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Daily Links]]></category>

		<guid isPermaLink="false">http://crynobone.com/links-for-2009-06-24/</guid>
		<description><![CDATA[Flexigrid Implemented in CodeIgniter, 27 Must-Have Starter Kits For Web Designers &#124; Graphics and Multi-site CodeIgniter Set-up
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Jj_M-IfLztP2aQXgPBf6Kpmzr_U/0/da"><img src="http://feedads.g.doubleclick.net/~a/Jj_M-IfLztP2aQXgPBf6Kpmzr_U/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Jj_M-IfLztP2aQXgPBf6Kpmzr_U/1/da"><img src="http://feedads.g.doubleclick.net/~a/Jj_M-IfLztP2aQXgPBf6Kpmzr_U/1/di" border="0" ismap="true"></img></a></p><p><a href="http://flexigrid.eyeviewdesign.com/">Flexigrid Implemented in CodeIgniter</a>, <a href="http://www.hongkiat.com/blog/27-must-have-starter-kits-for-web-designers/">27 Must-Have Starter Kits For Web Designers | Graphics</a> and <a href="http://philsturgeon.co.uk/news/2009/06/How-to-Multi-site-CodeIgniter-Set-up.html">Multi-site CodeIgniter Set-up</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=-CmtQxK-OsE:cuOwq-6mes8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=-CmtQxK-OsE:cuOwq-6mes8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=-CmtQxK-OsE:cuOwq-6mes8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=-CmtQxK-OsE:cuOwq-6mes8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=-CmtQxK-OsE:cuOwq-6mes8:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/links-for-2009-06-24/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>links for 2009-06-23</title>
		<link>http://crynobone.com/links-for-2009-06-23/</link>
		<comments>http://crynobone.com/links-for-2009-06-23/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 06:44:17 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[Daily Links]]></category>

		<guid isPermaLink="false">http://crynobone.com/links-for-2009-06-23/</guid>
		<description><![CDATA[Let&#8217;s make the web faster
]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/-VXAKqSfPvs3ri_dSEQNVxzSITU/0/da"><img src="http://feedads.g.doubleclick.net/~a/-VXAKqSfPvs3ri_dSEQNVxzSITU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/-VXAKqSfPvs3ri_dSEQNVxzSITU/1/da"><img src="http://feedads.g.doubleclick.net/~a/-VXAKqSfPvs3ri_dSEQNVxzSITU/1/di" border="0" ismap="true"></img></a></p><p><a href="http://code.google.com/speed/articles/optimizing-javascript.html">Let&#8217;s make the web faster</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=2B9XDx4i8lU:0GmYW-sEU3Y:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=2B9XDx4i8lU:0GmYW-sEU3Y:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=2B9XDx4i8lU:0GmYW-sEU3Y:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=2B9XDx4i8lU:0GmYW-sEU3Y:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=2B9XDx4i8lU:0GmYW-sEU3Y:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/links-for-2009-06-23/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Option Library for Ext.CodeIgniter</title>
		<link>http://crynobone.com/option-library-for-ext-codeigniter/</link>
		<comments>http://crynobone.com/option-library-for-ext-codeigniter/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 06:20:29 +0000</pubDate>
		<dc:creator>Zaki</dc:creator>
				<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Ext.CodeIgniter]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://crynobone.com/?p=483</guid>
		<description><![CDATA[
Some people might find WordPress&#8217;s get_option and update_option function helpful over filesystem based configuration where you don&#8217;t want user to frequently update the configuration files. Today let me show you how we can utilize the same functionality in CodeIgniter using Option Library.
Requirements &#38; Basic Informations
Before we start, let lay out some fact about Option Library:

is [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/BgkUqKfw3NfK0ATsn1PP6AEMecc/0/da"><img src="http://feedads.g.doubleclick.net/~a/BgkUqKfw3NfK0ATsn1PP6AEMecc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/BgkUqKfw3NfK0ATsn1PP6AEMecc/1/da"><img src="http://feedads.g.doubleclick.net/~a/BgkUqKfw3NfK0ATsn1PP6AEMecc/1/di" border="0" ismap="true"></img></a></p><p><img src="http://crynobone.com/wp-content/uploads/2009/10/logo.jpg" alt="logo" title="logo" width="165" height="165" class="alignright size-full wp-image-597" /></p>
<p>Some people might find WordPress&#8217;s <code>get_option</code> and <code>update_option</code> function helpful over filesystem based configuration where you don&#8217;t want user to frequently update the configuration files. Today let me show you how we can utilize the same functionality in CodeIgniter using Option Library.</p>
<h3>Requirements &amp; Basic Informations</h3>
<p>Before we start, let lay out some fact about Option Library:</p>
<ul>
<li>is based and developed on CodeIgniter 1.7.1, it might work with previous version but please do test it out first.</li>
<li>use CodeIgniter build-in Database Class with ActiveRecord.</li>
<li>we cache the result on every pageview, Option Library query the table and cached it in an Array which mean Option Library doesn&#8217;t overhaul your database.</li>
</ul>
<p><span id="more-483"></span></p>
<h3>Getting Started</h3>
<p>To use the Option library, you have to checkout a copy of latest <a href="http://myci.googlecode.com">Ext.CodeIgniter</a> or grab the following files:</p>
<ul>
<li><a href="http://myci.googlecode.com/svn/trunk/system/application/libraries/Option.php">http://myci.googlecode.com/svn/trunk/system/application/libraries/Option.php</a></li>
<li><a href="http://myci.googlecode.com/svn/trunk/system/application/config/application.php">http://myci.googlecode.com/svn/trunk/system/application/config/application.php</a></li>
</ul>
<h3>Database</h3>
<p>Before you can configure Option Library let first create a new table:</p>
<pre name="code" class="sql">CREATE TABLE `options` (
 `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
 `name` VARCHAR( 255 ) NOT NULL ,
 `value` TEXT NOT NULL
) ENGINE = MYISAM ;</pre>
<h3>Configuration</h3>
<p>Open <code>system/application/config/application.php</code> and go to line 35. You need to enable Option Library (allowing CodeIgniter the fetch from your option table) and identify the table schema based on the table you just created above.</p>
<pre name="code" class="php">$config['option']['enable'] = TRUE;
$config['option']['table'] = 'options';
$config['option']['attribute'] = 'name';
$config['option']['value'] = 'value';</pre>
<h3>Using the Option Library</h3>
<p>This is just a simple example how you use the library.</p>
<pre name="code" class="php">class Main extends Controller
{
    function __construct()
    {
        parent::Controller();
        $this-&gt;load-&gt;library('option');
    }
    function index()
    {
        // to retrieve a value
        echo $this-&gt;option-&gt;get('copyright');

        // to set a new value
        $this-&gt;option-&gt;update('copyright', '&amp;copy; 2009 Codenitive.');
    }
}</pre>
<h3>$this-&gt;option-&gt;get()</h3>
<p>Get a value of any given attribute available from the database table. If there&#8217;s no attribute with the given name return FALSE.</p>
<pre name="code" class="php">$data = $this-&gt;option-&gt;get('some_invalid_keyword');
// $data return FALSE</pre>
<h3>$this-&gt;option-&gt;update()</h3>
<p>Set a new value for given attribute, or if it a new attribute create a record inside the database table.</p>
<pre name="code" class="php">$this-&gt;option-&gt;update('some_invalid_keyword', 'some valid');</pre>
<h3>Conclusion</h3>
<p>How you can make use of it as I made in my project. If you manage to fine any bug please <a href="http://code.google.com/p/myci/issues/list">report it to us</a>, Thank you.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/crynobone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HIJxRn0-Z4U:u9zV6pa3PP8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HIJxRn0-Z4U:u9zV6pa3PP8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/crynobone?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HIJxRn0-Z4U:u9zV6pa3PP8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/crynobone?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/crynobone?a=HIJxRn0-Z4U:u9zV6pa3PP8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/crynobone?i=HIJxRn0-Z4U:u9zV6pa3PP8:V_sGLiPBpWU" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://crynobone.com/option-library-for-ext-codeigniter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
