<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>Lifelog &#187; database</title>
	<atom:link href="http://www.lifelog.be/tag/database/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.lifelog.be</link>
	<description>Life as a web developer/entrepreneur</description>
	<lastBuildDate>Wed, 10 Aug 2011 13:05:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Propel / Pager / Datagrid &#8211; Part II</title>
		<link>http://www.lifelog.be/2007/01/09/propel-pager-datagrid-part-ii/</link>
		<comments>http://www.lifelog.be/2007/01/09/propel-pager-datagrid-part-ii/#comments</comments>
		<pubDate>Tue, 09 Jan 2007 12:56:23 +0000</pubDate>
		<dc:creator>snk00sj</dc:creator>
				<category><![CDATA[PHP / MySQL]]></category>
		<category><![CDATA[Tech-Stuff]]></category>
		<category><![CDATA[webdesign]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[datagrid]]></category>
		<category><![CDATA[propel]]></category>
		<category><![CDATA[webdevelopment]]></category>

		<guid isPermaLink="false">http://www.lifelog.be/2007/propel-pager-datagrid-part-ii/</guid>
		<description><![CDATA[In my previous post, i talked about the writing of a custom datagrid for propel usage. The required features for this datagrid would be : easy configuration multi sortable columns (ascending &#038; descending) search features add actions to one or multiple records (icon + action) sizeable columns go to page x ability to change rows [...]]]></description>
			<content:encoded><![CDATA[<p>In my previous post, <a title="Propel Datagrid - Part I" target="_blank" href="http://www.lifelog.be/2006/propel-pager-datagrid/">i talked about the writing of a custom datagrid for propel usage.</a> The required features for this datagrid would be :</p>
<ul>
<li>easy configuration</li>
<li>multi sortable columns (ascending &#038; descending)</li>
<li>search features</li>
<li>add actions to one or multiple records (icon + action)</li>
<li>sizeable columns</li>
<li>go to page x</li>
<li>ability to change rows per page</li>
</ul>
<p>So since my last post, 2 weeks have passed and i am proud to say we&#8217;ve finished a large part of the code. Now we are still having problems with the javascript to allow the user to change his column width in multiple browsers, IE seems to refuse some of the javascript code. I am still looking into that.</p>
<p>P.S. : I have been getting several e-mails with code requests. Untill i am really done i won&#8217;t give out the code. If you think you can help me with the javascript resizing issue though, you can always drop me an e-mail.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lifelog.be/2007/01/09/propel-pager-datagrid-part-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Propel / Pager / Datagrid</title>
		<link>http://www.lifelog.be/2006/12/15/propel-pager-datagrid/</link>
		<comments>http://www.lifelog.be/2006/12/15/propel-pager-datagrid/#comments</comments>
		<pubDate>Fri, 15 Dec 2006 13:27:56 +0000</pubDate>
		<dc:creator>snk00sj</dc:creator>
				<category><![CDATA[(x)HTML]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[frameworks]]></category>
		<category><![CDATA[PHP / MySQL]]></category>
		<category><![CDATA[Tech-Stuff]]></category>
		<category><![CDATA[webdesign]]></category>
		<category><![CDATA[DAL]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[datagrid]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[propel]]></category>

		<guid isPermaLink="false">http://www.lifelog.be/2006/propel-pager-datagrid/</guid>
		<description><![CDATA[Because we are using propel in most of our larger projects, it&#8217;s very common we need a datagrid for the listing of the objects. A year ago we made a datagrid with the most important features combined with an ajax approach (sorting, filtering&#8230;), for the ajax functionality we wrote our own javascript function calls, what [...]]]></description>
			<content:encoded><![CDATA[<p>Because we are using propel in most of our larger projects, it&#8217;s very common we need a datagrid for the listing of the objects. A year ago we made a datagrid with the most important features combined with an ajax approach (sorting, filtering&#8230;), for the ajax functionality we wrote our own javascript function calls, what led to alot of unmanageable code, both javascript and php.</p>
<p>As time moved on, this loading of the datagrid became slower and slower (due to increasing objects, about 9000 records with multiple joined tables). This was mainly because the old datagrid first loaded all objects, and then sorted the entire array by the columns as defined by the user&#8230;.don&#8217;t tell me..i know ! This is a bad approach, that means all records get looped, and if you are using propel that would mean for each of those 9000+ records an object is created&#8230;that&#8217;s crazy&#8230;(it has some advantages though)&#8230;</p>
<p>So now i finally found some time to do a total rewrite of this datagrid, combined with the power of the <a title="Propel Pager" target="_blank" href="http://propel.phpdb.org/docs/api/current/runtime/propel.util/PropelPager.html">propel pager</a>, <a title="Propel Criteria" target="_blank" href="http://propel.phpdb.org/docs/user_guide/chapters/FindingObjects.html">propel criteria</a> &#038; the php/ajax framework <a title="Xajax" target="_blank" href="http://www.xajaxproject.org/">xajax</a>, i came up, faster then expected, with a powerfull scalable datagrid that only loads the visible records. All switchpages, sorting &#038; filters call a corresponding ajax function. These functions change the criteria in the object and reload the datagrid. I&#8217;ll elaborate on this later, by showing you some code and perhaps an online example.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lifelog.be/2006/12/15/propel-pager-datagrid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

