<?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>The Infinite Loop - Beginner&#039;s SEO, Beginner C# &#38; JQuery Tutorials</title>
	<atom:link href="http://theinfiniteloopblog.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://theinfiniteloopblog.com</link>
	<description>Problem. Problem Solved. Loop. - The life of a programmer</description>
	<lastBuildDate>Wed, 17 Aug 2011 15:29:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Automatic Get/Set Visual C# 2010</title>
		<link>http://theinfiniteloopblog.com/gen/automatic-getset-visual-c-2010/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=automatic-getset-visual-c-2010</link>
		<comments>http://theinfiniteloopblog.com/gen/automatic-getset-visual-c-2010/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 15:29:45 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=445</guid>
		<description><![CDATA[One of my favorite features of c#. Automatic getters/setters! Before, one would have to declare a variable. private int _x; And then write get/set methods: public int X{ get{return _x;} set{x=value;} } However, in VISUAL C# 2010 - you can now do the following: public int X{get;set;} Which is the same as the code above! [...]]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>One of my favorite features of c#. Automatic getters/setters!</p>
<p>Before, one would have to declare a variable.</p>
<p><code>private int _x;</code><br />
And then write get/set methods:</p>
<p><code>public int X{<br />
     get{return _x;}<br />
     set{x=value;}<br />
}</code></p>
<p>However, in VISUAL C# 2010 - you can now do the following:<br />
<code>public int X{get;set;}</code>  Which is the same as the code above!</p>
<p>Note: If you want to wrap any validation or anything around the get/set you will still need to write out the full get/set. However, for quick variables that require no extra work - the automatic get/set is a lifesaver! (or timesaver - if you're life is not in danger...whichever you prefer)</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/gen/automatic-getset-visual-c-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C#/PHP Database Object Generator/Database Access Layer Generator</title>
		<link>http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=c-database-object-generatordatabase-access-layer-generator</link>
		<comments>http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/#comments</comments>
		<pubDate>Mon, 20 Jun 2011 05:36:29 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=433</guid>
		<description><![CDATA[This is something i have been working on. It is virtually a tool I use to generate c#/php classes based on a database schema. The c#/SQL integration works well, however, I am still working to support the php/mysql generation. It creates very simple base C# classes based on a database connection. The program includes Saving [...]]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>This is something i have been working on.<br />
It is virtually a tool I use to <strong>generate c#/php classes based on a database schema.</strong><br />
The c#/SQL integration works well, however, I am still working to support the php/mysql generation.</p>
<p>It creates very simple base C# classes based on a database connection. The program includes Saving Generation profiles and reloading them at a later time. It has a recently loaded profiles list - and allows you to regenerate the DAO as many times as you like.</p>
<p>By using this C# Database Object Generator/Database Access Layer Creation Tool I can focus on my application development as opposed to my DAL (data access layer) development.</p>
<p>This piece of software is currently in beta - and I am the only beta tester! <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>If you would like the installer - you can send me an email and I can send you a copy. </p>
<p>Here are some screenshots and some example usage!<br />

<a href='http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/attachment/cap1/' title='C# Database Object Creator'><img width="150" height="150" src="http://theinfiniteloopblog.com/wp-content/uploads/2011/06/cap1-150x150.jpg" class="attachment-thumbnail" alt="C# Database Object Creator (Schema and Profile)" title="C# Database Object Creator" /></a>
<a href='http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/attachment/cap2/' title='File Generation'><img width="150" height="150" src="http://theinfiniteloopblog.com/wp-content/uploads/2011/06/cap2-150x150.jpg" class="attachment-thumbnail" alt="Generated Entity Files" title="File Generation" /></a>
<a href='http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/attachment/cap3/' title='Generated Base File Example (hero.cs)'><img width="150" height="150" src="http://theinfiniteloopblog.com/wp-content/uploads/2011/06/cap3-150x150.jpg" class="attachment-thumbnail" alt="HeroBase.cs" title="Generated Base File Example (hero.cs)" /></a>
<a href='http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/attachment/cap4/' title='File Generation (Figure 2)'><img width="150" height="150" src="http://theinfiniteloopblog.com/wp-content/uploads/2011/06/cap4-150x150.jpg" class="attachment-thumbnail" alt="File Generation (Figure 2)" title="File Generation (Figure 2)" /></a>
<br />
And example usage of the classes generated by the c# database object generator tool. Note - the class HeroBase was from the generation files.</p>
<p><code>public HeroBase GetHeroById(int id)<br />
        {</p>
<p>            SqlConnection conn = serv.GetConnection();<br />
            try<br />
            {<br />
                conn.Open();<br />
                SqlCommand cmd = new SqlCommand();<br />
                cmd.CommandText = "SELECT * FROM hero WHERE hero_id="+id;<br />
                cmd.Connection = conn;<br />
                SqlDataReader rdr = cmd.ExecuteReader();<br />
                while (rdr.Read())<br />
                {<br />
                    HeroBase h = HeroFromReaderRow(rdr);<br />
                    if (h != null)<br />
                        return h;<br />
                }<br />
            }<br />
            catch (Exception ex)<br />
            {<br />
                throw new Exception("Could not load Heros " + ex.Message);<br />
            }<br />
            finally<br />
            {<br />
                conn.Close();<br />
            }<br />
            return null;<br />
        }</p>
<p>        public HeroBase HeroFromReaderRow(SqlDataReader rdr)<br />
        {<br />
            if (rdr == null)<br />
                return null;</p>
<p>            HeroBase h = new HeroBase();<br />
            h.HeroId = Convert.ToInt32(rdr["hero_id"]);<br />
            h.HeroName = rdr["hero_name"].ToString();<br />
            h.HeroDescription = rdr["hero_description"].ToString();<br />
            h.HeroType = rdr["hero_type"].ToString();<br />
            h.ImageFile = rdr["image_file"].ToString();<br />
            h.ModelFile = rdr["model_file"].ToString();<br />
            h.BaseAutoAttackLow = Convert.ToInt32(rdr["base_auto_attack_low"]);<br />
            h.BaseAutoAttackHigh = Convert.ToInt32(rdr["base_auto_attack_high"]);<br />
            h.BaseMovementSpeed = Convert.ToInt32(rdr["base_movement_speed"]);<br />
            h.Premium = Convert.ToBoolean(rdr["premium"]);<br />
            h.Concentration = Convert.ToInt32(rdr["concentration"]);<br />
            h.ModelRotation = Convert.ToDouble(rdr["model_rotation"]);<br />
            h.ModelScale = Convert.ToDouble(rdr["model_scale"]);<br />
            h.Active = Convert.ToBoolean(rdr["active"]);<br />
            return h;</p>
<p>        }</code></p>
<p>The reason the classes are affixed with the 'Base' word, is because this allows for the extension of these classes. HeroBase is the database version of the class - which includes base_hp, base_energy, base_movement_speed etc etc, however, an actual hero in a game will have much more than this (hp timers, energy/mana timers, current hp, current energy) - the naming of the classes allows for you to easily extend them.</p>
<p>For example:<br />
<code><br />
public class Hero:HeroBase(){<br />
       public Hero():base(){<br />
               CurrentHP=MaxHP;<br />
       }<br />
       public int CurrentHP{get;set;}<br />
}<br />
</code></p>
<p>I have classes created named service.<br />
E.g HeroService - this service has necessary methods for loading heroes from the database. This service returns objects of the Hero/HeroBase type.</p>
<p>All in all - it saves me a ton of time and I am glad Ive written this tool. Please comment if you have any interest in it - as I would like to gauge interest before I invest more of my time into refining it. As it sits now - it is perfect for my side project development, however, if there is enough interest - I am more than willing to improve it <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/gen/c-database-object-generatordatabase-access-layer-generator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Beginner Game programming jobs in Toronto</title>
		<link>http://theinfiniteloopblog.com/gen/beginner-game-programming-jobs-in-toronto/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=beginner-game-programming-jobs-in-toronto</link>
		<comments>http://theinfiniteloopblog.com/gen/beginner-game-programming-jobs-in-toronto/#comments</comments>
		<pubDate>Mon, 20 Jun 2011 05:09:36 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=429</guid>
		<description><![CDATA[Well, it seems to me that finding a game programming job in Toronto is going to be pretty hard. I have used XNA and am currently working on a small c#/xna based engine for a game. Currently I have the following, none of which are graphical (except for the heroes with a small chase camera): [...]]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>Well, it seems to me that finding a game programming job in Toronto is going to be pretty hard.<br />
I have used XNA and am currently working on a small c#/xna based engine for a game.<br />
Currently I have the following, none of which are graphical (except for the heroes with a small chase camera):</p>
<p>Heroes (Health, HP regen, Energy Regen, Attacking Mechanisms, Defense Mechanisms)<br />
Hero Abilities<br />
Hero Stats<br />
Creep Waves (CreepEngine class responsible for spawning waves and keeping track of wave timers etc)</p>
<p>and am currently working on a few mechanics - like stealing gold etc.<br />
I guess Im just doing this to kill time and practice coding a game engine, but hopefully it gets to a point where it could be useful to someone. </p>
<p>It seems breaking into the game programming industry will be harder than I thought - teachers in college often discouraged me from it - saying it was a hard industry with tight deadlines etc etc...but what can be more fun than MAKING GAMES?!</p>
<p> <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  There will be a point in time where I know that programming business apps will no longer do it for me - and thats when I want to switch over to game programming. Call it a midlife crisis (at 22 years old) - but I am passionate about it! It seems that most video game companies already want a ton of experience in the game industry - how can someone get that experience if no one in the industry will hire?</p>
<p>Its nuts.<br />
3years with an advanced college diploma - and its not enough.<br />
Everyone wants a bachelors degree in comp sci - because having the money to pay your way through university and being in debt is somehow a sign that your dedicated. I will continue working on my little demo - it wont be easy and it will take a while but, I will get there.</p>
<p>Is anyone in the same situation as me?<br />
Does anyone feel helpless with this whole video game industry?</p>
<p>Its such a big industry - I don't even know where to start (Sure, I can go to a game programming school for $15,000/yr) - but life isnt a crystal staircase and I have bills to pay).</p>
<p>Any tips, inside knowledge etc, is highly appreciated - [b]comment if you'd like please!!! <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> [/b]</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/gen/beginner-game-programming-jobs-in-toronto/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HostGator 2010 Black Friday Sale Special 50-80% off hosting!</title>
		<link>http://theinfiniteloopblog.com/gen/cheap-hosting/hostgator-2010-black-friday-sale-special-50-80-off-hosting/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hostgator-2010-black-friday-sale-special-50-80-off-hosting</link>
		<comments>http://theinfiniteloopblog.com/gen/cheap-hosting/hostgator-2010-black-friday-sale-special-50-80-off-hosting/#comments</comments>
		<pubDate>Fri, 26 Nov 2010 03:55:24 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Cheap Hosting]]></category>
		<category><![CDATA[cheap web hosting]]></category>
		<category><![CDATA[cheapest hosting]]></category>
		<category><![CDATA[host gator]]></category>
		<category><![CDATA[host gator black friday 2010]]></category>
		<category><![CDATA[hostgator]]></category>
		<category><![CDATA[hostgator 2010 blackfriday]]></category>
		<category><![CDATA[hostgator black friday]]></category>
		<category><![CDATA[hostgator blackfriday sale]]></category>
		<category><![CDATA[really cheap hosting]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=415</guid>
		<description><![CDATA[We're offering 50% OFF EVERYTHING From 12:00AM CST – 5AM CST <em>(11am EST - 4am EST)</em><br/>
We're offering 80% OFF EVERYTHING From 5AM – 9AM CST <em>(4am EST - 9am EST)</em> WHILE SUPPLIES LAST (first come, first receive; so definitely don't miss out!)]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>Discounted hosting has never been better!<br />
As a hostgator affiliate I get emails and notices about their specials. And this one blew my mind.<br/><br/></p>
<p>One day only 50-80% off!!<br/><br />
Now - let me be perfectly frank - I am an affiliate and do make commissions off referrals - but come on 80% off hosting for 3 years? Thats awesome any way you slice it. (horizontal, vertical, or diagonal). But, even if I didn't make any commission referring - i would still HIGHLY recommend them. Their live support chat always gets 10 ratings from me across the board!<br/><br/></p>
<p>Here is an excerpt from my affiliate email (we're obviously refers to hostgator) <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  :<br/><br />
<b>We're offering 50% OFF EVERYTHING From 12:00AM CST – 5AM CST <em>(11am EST - 4am EST)</em><br/><br />
We're offering 80% OFF EVERYTHING From 5AM – 9AM CST <em>(4am EST - 9am EST)</em> WHILE SUPPLIES LAST (first come, first receive; so definitely don't miss out!)<br/><br />
From 9AM – 11:59PM CST <em>(8am-10:59pm)</em> OR after 80% OFF accounts have sold out, we will continue to offer 50% OFF EVERYTHING<br/><br />
This applies to ALL Accounts and ALL Term Lengths. So you're visitors and friends will have the opportunity to receive up to 80% off of up to 3 years worth of Hosting! That would come out to $35.64 for 3 FULL YEARS!<br/></b></p>
<p>And - The links you have all been waiting for:<br />
(Feel free to use hostgator.com if you do not want me to get commission on your referral)</p>
<p><a href="http://secure.hostgator.com/~affiliat/cgi-bin/affiliates/clickthru.cgi?id=aburningflame-blackfriday"><img src="http://tracking.hostgator.com/img/Green/468x60.gif" border=0></a><br/><br />
<a href="http://secure.hostgator.com/~affiliat/cgi-bin/affiliates/clickthru.cgi?id=aburningflame-blackfriday"><img src="http://tracking.hostgator.com/img/Extras/468x60-animated.gif" border=0></a><br/><br />
<a href="http://secure.hostgator.com/~affiliat/cgi-bin/affiliates/clickthru.cgi?id=aburningflame-blackfriday"><img src="http://tracking.hostgator.com/img/Reseller/468x60.gif" border=0></a></p>
<p>ENJOY!!!! <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Theyve treated me really well - and they will treat you just as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/gen/cheap-hosting/hostgator-2010-black-friday-sale-special-50-80-off-hosting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Paging in PHP &#8211; PHP Paging Tutorial</title>
		<link>http://theinfiniteloopblog.com/programming/php/paging-in-php-php-paging-tutorial/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=paging-in-php-php-paging-tutorial</link>
		<comments>http://theinfiniteloopblog.com/programming/php/paging-in-php-php-paging-tutorial/#comments</comments>
		<pubDate>Sun, 30 May 2010 01:56:07 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[beginner css]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[css layout]]></category>
		<category><![CDATA[css techniques]]></category>
		<category><![CDATA[css tricks]]></category>
		<category><![CDATA[custom php paging]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[tableless design]]></category>
		<category><![CDATA[tableless layout]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=381</guid>
		<description><![CDATA[<strong>Paging in php and automatic pagination</strong> is something every coder has to deal with when coding in php. I mean, you COULD show all results on 1 page and skip the php paging, but paging is necessary to reduce bandwidth and organize content. Paging is very easy to do and I will walk you through it step by step. 
]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<h2 style="font-size:8pt;">PHP Paging &amp; Automatic Pagination Tutorial - Paging made easy</h2>
<p>I have written a <strong>php paging tutorial</strong> before. Admittedly, it wasn't the greatest. I don't think I was as clear as I wanted to be. SO I'm trying again. <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  At the end of this tutorial, there is a file named <b>php-automatic-pagination.php.txt</b><br />
Please download it! It will help you understand the following.</p>
<p>Here is what we will be making..nice, simple pagers! (Dont worry about the Image #x text, thats really not part of the tutorial)<br />
<a href="http://theinfiniteloopblog.com/wp-content/uploads/2010/05/php-automatic-pagination.jpg" target="_blank"><img src="http://theinfiniteloopblog.com/wp-content/uploads/2010/05/php-automatic-pagination-300x141.jpg" alt="PHP Automatic Pagination/Simple PHP Paging Tutorial" title="php-automatic-pagination" width="300" height="141" class="alignnone size-medium wp-image-400" /></a></p>
<p><strong>Paging in php and automatic pagination</strong> is something every coder has to deal with when coding in php. I mean, you COULD show all results on 1 page and skip the php paging, but paging is necessary to reduce bandwidth and organize content. Paging is very easy to do and I will walk you through it step by step. </p>
<p>PHP automatic paging comes with a few questions:<br />
Paging 1 : Page Size - How many results would you like to display per page?<br />
Paging 2 : How can we bring back proper results in mysql?<br />
Paging 3 : How can we print a pager that will help show the next items.</p>
<p>Decide on your page size - 10, 15, 25, 50, 100. It really depends on what you would like to do.  For this tutorial I will use 15.</p>
<p class="comment">//we want 15 results per page</p>
<p>$pgsize=15; </p>
<p class="comment">//if there is a p variable in the query string e.g: page.php?p=5 we will get this value, else we will use 1 (page 1)</p>
<p>$pg=(is_numeric($_GET["p"]) ? $_GET["p"] : 1); </p>
<p class="comment">//lets determine where we would like to get results from<br />
//if $pg is 1, this calculation results in 0 (we want to start from the first record in the database)<br />
//if $pg is 2, this calculation will result in 1*15..which means we will start at the 15th index of the database (row 16)</p>
<p>$start=($pg-1)*$pgsize; </p>
<p class="comment">//let us query the database for our results<br />
//you will notice LIMIT and $start and $pgsize.<br />
//On page 1, this query will be SELECT * FROM image_table LIMIT 0,15  - this means return 15 rows starting at row-index 0 (row 1)<br />
//On page 2, this query will be SELECT * FROM image_table LIMIT 15, 15 - this means we will return 15 rows starting at row-index 15 (row 16)<br />
//On page 3, this query will be SELECT * FROM image_table LIMIT 30,15 - this means we will return 15 rows starting at row-index 30 (row 31)<br />
GET IT?!?!?!</p>
<p>$imgs=mysql_query("SELECT * FROM image_table LIMIT $start, $pgsize");</p>
<p class="comment">//we will also need the total number of records in our table<br />
//notice there is no limit? we want to know how many records are in the entire table!<br />
//we can use COUNT(*), COUNT(1), or COUNT(fieldname), they will all return the same result</p>
<p>$img_total=mysql_query("SELECT COUNT(1) FROM image_table");</p>
<p class="comment">//mysql_query returns a resource id, we can use this to get the row it has returned</p>
<p>$img_total=mysql_fetch_row($img_total);</p>
<p class="comment">//the count will be the first field in this row</p>
<p>$img_total=$img_total[0];</p>
<p class="comment">//lets determine how many pages we will need<br />
 //WRONG!, this will cut off results..why?<br />
//say we have 31 images, and our page size is 15. 31/15= ~2.x...We need to round this result up!</p>
<p>$max_pages=$img_total / $pgsize; </p>
<p class="comment">//use this line instead</p>
<p>$max_pages=ceil($img_total/$pgsize);</p>
<p>Once we have all this information, we can use a handy little function I have written named printPager. This function will print out a neat little pager. It uses a helper function named add_querystring_var which was from Added Bytes here:<br />
<a href="http://www.addedbytes.com/code/querystring-functions/">http://www.addedbytes.com/code/querystring-functions/</a></p>
<p>Copy/paste this function into your page or into one of your includes:<br />
This will print out your awesome little pager! <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2 style="font-size:1em;">PHP Automatic Pagination Function</h2>
<div style="font-size:0.9em;">
function printPager($max_pages,$pg){<br />
	print '&lt;div class="clear"&gt;&lt;/div&gt;';<br />
	print '&lt;ul class="pager"&gt;';<br />
	$i=1;<br />
	if($pg!=1){<br />
		$url=$_SERVER["SCRIPT_NAME"];<br />
		$url.=add_querystring_var("?".$_SERVER["QUERY_STRING"], "p", $pg-1);<br />
		print '&lt;li class="prev"&gt;&lt;a href="'.$url.'"&gt;&lt;&lt;&lt;/a&gt;&lt;/li&gt;';<br />
	}</p>
<p>	while($i&lt;=$max_pages){<br />
		$url=$_SERVER["SCRIPT_NAME"];<br />
		$url.=add_querystring_var("?".$_SERVER["QUERY_STRING"], "p", $i);</p>
<p>		if($pg==$i){<br />
			print '&lt;li class="current"&gt;';<br />
			print '&lt;span&gt;'.$i.'&lt;/span&gt;';<br />
			print "&lt;/li&gt;";<br />
		}else{<br />
			print "&lt;li&gt;";<br />
			print '&lt;a href="'.$url.'"&gt;'.$i.'&lt;/a&gt;';<br />
			print "&lt;/li&gt;";<br />
		}</p>
<p>		$i++;<br />
	}</p>
<p>	if($pg!=$max_pages){<br />
		$url=$_SERVER["SCRIPT_NAME"];<br />
		$url.=add_querystring_var("?".$_SERVER["QUERY_STRING"], "p", $pg+1);<br />
		print '&lt;li class="next"&gt;&lt;a href="'.$url.'"&gt;&gt;&gt;&lt;/a&gt;';<br />
	}<br />
	print '&lt;/ul&gt;';<br />
	print '&lt;div class="clear"&gt;&lt;/div&gt;';<br />
}</p>
<p>function add_querystring_var($url, $key, $value) { $url = preg_replace('/(.*)(\?|&#038;)' . $key . '=[^&#038;]+?(&#038;)(.*)/i', '$1$2$4', $url . '&#038;'); $url = substr($url, 0, -1); if (strpos($url, '?') === false) { return ($url . '?' . $key . '=' . $value); } else { return ($url . '&#038;' . $key . '=' . $value); } }
</p></div>
<p>Print Pager is called like so:<br />
<?php printPager($max_pages, $pg); ?></p>
<h2 style="font-size:1em;">PHP Pager Styles</h2>
<div style="font-size:0.9em;">
We can style this pager using the following:<br />
/*pagers*/</p>
<p>div.clear{clear:both;}<br />
/spacing between numbers and sizes<br />
ul.pager li {<br />
	float:left;<br />
	margin-right:5px;<br />
	font-size:8pt;<br />
	padding: 2px 5px 2px 5px;<br />
}</p>
<p>//link color<br />
ul.pager li a{<br />
	color:red;<br />
}</p>
<p>//link hover style<br />
ul.pager li a:hover{<br />
	text-decoration:underline;<br />
	color:red;<br />
}</p>
<p>//current page styling<br />
ul.pager li.current span{<br />
	color:red;<br />
}</p>
<p>//previous and next stylings<br />
ul.pager li.prev, ul.pager li.next{</p>
<p>}
</p></div>
<p>Download this tutorials script! It will help you understand. Right click: <a href='http://theinfiniteloopblog.com/wp-content/uploads/2010/05/php-automatic-pagination-tutorial.php.txt'>php-automatic-pagination-tutorial.php</a> and click Save as. Then get rid of the .txt extension and name it php if you would like to run it. You will need to setup a database table to use for the tutorial. It can have an id field and another field.</p>
<p>If you enjoyed this post please leave a comment! I like reading and responding to all my readers!<br />
Thanks</p>
<p><a href="http://secure.hostgator.com/~affiliat/cgi-bin/affiliates/clickthru.cgi?id=aburningflame-"><img src="http://tracking.hostgator.com/img/Green/468x60.gif" border=0></a><br />
<strong>Use HostGator 2010 Coupon Code: <em>994offhgpackage</em> for $9.94 off your first month!<br />
(First month will cost $0.01)</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/programming/php/paging-in-php-php-paging-tutorial/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>HostGator Discount Code 2010 &#8211; Cheap Web Hosting</title>
		<link>http://theinfiniteloopblog.com/gen/cheap-hosting/hostgator-discount-code-cheap-web-hosting/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hostgator-discount-code-cheap-web-hosting</link>
		<comments>http://theinfiniteloopblog.com/gen/cheap-hosting/hostgator-discount-code-cheap-web-hosting/#comments</comments>
		<pubDate>Mon, 24 May 2010 07:57:40 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Cheap Hosting]]></category>
		<category><![CDATA[host gator discount code 2010]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=332</guid>
		<description><![CDATA[Affordable and cheap shared web hosting with great live chat support. Get one month now for $0.01 cent using the coupon code: 994offhgpackage or 2010hostgatorcoupon or hostgatorcoupon2010]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>By far one of the best hosting companies I have had the experience of being a customer of is HostGator. Their prices are extremely affordable and their customer support is SUPERB. I have never had a web hosting company with the technical expertise and patience of the live support chat. They always answer questions and help configure servers. I have had live support chat agents sit there patiently and wait for me to re-test my site after their changes.</p>
<p>Our programming company uses HostGator to host all of our sites - they have shared web hosting, reseller accounts, and others.<br />
They offer UNLIMITED disk space hosting (250,000 files maximum ...100,000 if you intend to use the auto-backup feature) and<br />
UNLIMITED bandwidth and are just the best hosting company i have ever had the pleasure of working with.</p>
<p>Use one of these HostGator 2010 coupon codes  to receive $9.94 off your first month!</p>
<h2>HostGator Discount Coupons/Promo Codes:</h2>
<p><strong>HostGator 2010 coupon/promo code 1: 994offhgpackage</strong><br />
<strong>HostGator 2010 coupon/promo code 2: 2010hostgatorcoupon</strong><br />
<strong>HostGator 2010 coupon/promo code 3: hostgatorcoupon2010</strong><br />
With the "BABY" plan for 1 month this means you pay $0.01 for 1 month hosting!</p>
<p><a href="http://secure.hostgator.com/~affiliat/cgi-bin/affiliates/clickthru.cgi?id=aburningflame-"><img src="http://tracking.hostgator.com/img/Shared/300x250.gif" border=0></a></p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/gen/cheap-hosting/hostgator-discount-code-cheap-web-hosting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ING Direct Orange Key 2010</title>
		<link>http://theinfiniteloopblog.com/uncategorized/ing-direct-orange-key-2010/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ing-direct-orange-key-2010</link>
		<comments>http://theinfiniteloopblog.com/uncategorized/ing-direct-orange-key-2010/#comments</comments>
		<pubDate>Sat, 22 May 2010 05:44:44 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Finance/Investing]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=330</guid>
		<description><![CDATA[ING Direct 2010 Orange Key : 17190811S1. Receive a $25 bonus when you sign up with ING Direct with a minimum starting deposit of $100.]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>Using this <strong>ING Direct 2010 orange key</strong>: <strong>17190811S1</strong>  you and I will receive a $25 each when you deposit a minimum of $100 to start your account!</p>
<p>Who doesn't like free money? <img src='http://theinfiniteloopblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Enjoy</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/uncategorized/ing-direct-orange-key-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hide Google Custom Search Engine (CSE) Textbox</title>
		<link>http://theinfiniteloopblog.com/uncategorized/hide-google-custom-search-engine-cse-textbox/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hide-google-custom-search-engine-cse-textbox</link>
		<comments>http://theinfiniteloopblog.com/uncategorized/hide-google-custom-search-engine-cse-textbox/#comments</comments>
		<pubDate>Fri, 21 May 2010 17:03:05 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[google cse hide textbox]]></category>
		<category><![CDATA[google custom search engine]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/2010/05/hide-google-custom-search-engine-cse-textbox/</guid>
		<description><![CDATA[There doesn't seem to be any articles on this, so I will try to save you time by letting you know. Using firebug, we can inspect the textbox element to see it is a form with the class .gsc-search-box. To hide the search box simply add this to your css: .gsc-search-box { display:none; }]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>There doesn't seem to be any articles on this, so I will try to save you time by letting you know. Using firebug, we can inspect the textbox element to see it is a form with the class .gsc-search-box.</p>
<p>To hide the search box simply add this to your css:</p>
<p>.gsc-search-box {<br />
    display:none;<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/uncategorized/hide-google-custom-search-engine-cse-textbox/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>High Rate Interest Account &#8211; Tax Free Accounts Canada</title>
		<link>http://theinfiniteloopblog.com/financeinvesting/high-rate-interest-account-tax-free-accounts-canada/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=high-rate-interest-account-tax-free-accounts-canada</link>
		<comments>http://theinfiniteloopblog.com/financeinvesting/high-rate-interest-account-tax-free-accounts-canada/#comments</comments>
		<pubDate>Fri, 21 May 2010 16:15:14 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Finance/Investing]]></category>
		<category><![CDATA[high interest investments]]></category>
		<category><![CDATA[investment]]></category>
		<category><![CDATA[tax free account]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=316</guid>
		<description><![CDATA[Over the past years of my life, I have looked at different banks and competing interest rates, and I have learned that high rate interest accounts are hard to come by. Even major banks like TD Canada Trust and CIBC cannot really say they offer a high rate interest account. Here are their current Savings Account Interest Rates.]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<p>There are many banks offering tax free savings accounts in Canada and "high" interest savings accounts.<br />
I've come to notice that most of these banks offer anything but a <strong>high rate interest account</strong>.</p>
<p>Over the past years of my life, I have looked at different banks and competing interest rates, and I have learned that high rate interest accounts are hard to come by. Even major banks like TD Canada Trust and CIBC cannot really say they offer a high rate interest account. Here are their current Savings Account Interest Rates.</p>
<p><strong>Canadian Savings Account Interest Rates:</strong><br />
TD Canada Trust Savings Account Interest Rates:<br />
<a href="http://www.cibc.com/ca/rates/bank-acct-rates.html">http://www.tdcanadatrust.com/accounts/int-calc.pdf</a><br />
Savings Account: 0.05% (0.25% past the $3,000 mark)</p>
<p>CIBC Savings Account Interest Rates:<br />
<a href="http://www.cibc.com/ca/rates/bank-acct-rates.html">http://www.cibc.com/ca/rates/bank-acct-rates.html</a><br />
Savings Acccount (varied): 0% (0.10% with a $5,000+ balance)</p>
<p>SCOTIABANK Savings Account Interest Rates:<br />
<a href="http://scotiabank.com/rates/savings.html#scotiaplus">http://scotiabank.com/rates/savings.html#scotiaplus</a><br />
Savings Account (varired): (0.1%-0.25%)</p>
<p>ICICI Savings Account Interest Rates<br />
<a href="http://www.icicibank.ca/personalbanking/popup_sav.htm">http://www.icicibank.ca/personalbanking/popup_sav.htm</a><br />
Savings Account(varied): (0.75%-1.25%)</p>
<p>Now we're talking. However, further investigation will show you that ICICI isn't all its cracked up to be. Just because a bank is offering a High Rate Interest Account, does not mean they are the best choice for your investment.</p>
<p>Fees and Charges should play a big role in determining which high rate interest, tax free account you should choose for your investment.<br />
<a href="http://www.icicibank.ca/personalbanking/popup_mt.htm">ICICI Fees &amp; Charges</a></p>
<p>A few years ago, my sister told me about a bank that offered a high interest rate account, and had NO fees. Yes, NO FEES! I personally thought this was too good to be true, but after doing my research I realize it was not. I am now currently a happy customer of this bank and have been for a while. I have an Investment Savings Account AND a Tax Free Savings Account (TFSA) which offers one of the best interest rates on the current market. That, along with no fees, and I have been making a good deal of interest on very little principal.</p>
<p>If you haven't heard of them, you must be living under a rock.</p>
<p><strong>Best High Rate Interest Account/Tax Free Accounts Canada</strong><br />
ING Direct is offering one of the best interest rates on the TFSA/GIC Market.<br />
ING Direct Current Savings Account &amp; TFSA Rates<br />
<a href="http://www.ingdirect.ca/en/accounts-rates/index.html">http://www.ingdirect.ca/en/accounts-rates/index.html</a></p>
<p>Currently, ING Direct is offering a 2% TFSA and a 1.2% Investment Savings Account.<br />
These accounts come with no ING Direct fees &#038; charges.</p>
<p>You should however, read about TFSAs and figure out what your contribution limit is for the year. In Canada at the moment, this amount is $5,000 per year. Contribution Limit means how much you can contribute..if you contribute $5000 and then later withdraw $1000, you cannot recontribute $1000 for the remainder of the year!</p>
<p>ING Direct's TFSA is one of the best High Rate Interest, Tax Free Savings Account.</p>
<p>Joining is easy and can be done in 3 steps:</p>
<ol>
<li>Decide on your account<br/><a href="http://www.ingdirect.ca/en/signmeup/index.html">http://www.ingdirect.ca/en/signmeup/index.html</a>. I recommend the TFSA (Tax Free Savings Account). ING also offers some high interest rate GIC's and Investment Savings Accounts...although at the moment your money is better off in a TFSA than a GIC. When you find the account you'd like click: Enroll Now!<br/><br/></li>
<li>Fill out the information form. Where it asks for an Orange Key type this: <strong>17190811S1</strong> to receive a $25 bonus when you make an initial deposit of $100. Disclaimer: I will also get a $25 referral bonus when you use this key. If I have educated you and helped you make a good choice, please enter the key to show your appreciation. If you would not like to enter the key, that is also fine. (The purpose of this post was to educate on high rate accounts, not give myself bonuses, however I figured I would include it because who wouldn't want a bonus?) Take Note of the Client ID you are given, you will use this to login to the site, and in Step 3<br/><br/></li>
<li>Write a cheque made out to yourself. If you would like to receive the $25 bonus, you must write a minimum of $100. You can use a minimum of $1, however, you will not receive this bonus. In the memo line write this: Client Number - 2391030 (Replace this with your actual client ID in step 2!) and mail the cheque to:<br/><br />
ING Direct<br/>111 Gordon Baker Road<br/>Toronto, ON<br/>M2H 3R1</li>
</ol>
<p>Once your cheque has cleared, the account you mailed the cheque from will be electronically linked to your ING Account. You can then use INGDirect.ca to transfer money between the accounts, setup ONGOING ASP (Automatic Savings Plans).</p>
<p>The ASP feature is what really got me to open an account. You can choose an amount and have it withdraw on an ongoing basis. Every 2 weeks, on payday, I have $100 moving from my chequing account with TD Canada Trust to my ING Savings Account. You just set it and forget it....The best part is, you NEVER see the money, so you never miss it. But, under the covers, you are saving, and gaining a great interest rate!</p>
<p>Hope this article helps you on your journey to earning interest on your hard earned money.<br />
Once again, if you would like for us both to receive a $25 bonus please use this code as your orange key: <strong>17190811S1</strong> and deposit a minimum of $100. If you would not like for either of us to receive a bonus, do not enter the key. </p>
<p>Happy Saving and feel free to post comments on how much you have saved with ING!<br />
In a short year of having a small fluctuating balance of under $3000, I have earned close to $200 in interest, compared to measly cents at TD.</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/financeinvesting/high-rate-interest-account-tax-free-accounts-canada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How To Remove Viruses and Spyware Manually</title>
		<link>http://theinfiniteloopblog.com/gen/pc-maintenance/how-to-remove-viruses-and-spyware-manually/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-remove-viruses-and-spyware-manually</link>
		<comments>http://theinfiniteloopblog.com/gen/pc-maintenance/how-to-remove-viruses-and-spyware-manually/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 23:04:49 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[PC Maintenance]]></category>
		<category><![CDATA[adware removal]]></category>
		<category><![CDATA[adware removal tips]]></category>
		<category><![CDATA[malware removal tips]]></category>
		<category><![CDATA[spyware removal]]></category>
		<category><![CDATA[spyware removal tips]]></category>

		<guid isPermaLink="false">http://theinfiniteloopblog.com/?p=303</guid>
		<description><![CDATA[Prevention is the best medicine. I'm sure you've heard something like that before but its true. Knowing about how to prevent spyware goes a long way. There are many programs that offer virus+spyware/malware protection and they will monitor your computer for changes to  your registry and files. I recommend the following programs for spyware/malware protection and scans.]]></description>
			<content:encoded><![CDATA[
<!-- ALL ADSENSE ADS DISABLED -->
<h2>Remove Viruses and Spyware Manually</h2>
<p>Viruses,spyware, malware - whatever you want to call it, these things wreak havoc on your computer. Browser hijacks, file deletion, disabling ctrl+alt+delete are just a few things that some of these baddies can do. However, there are some tools to help you remove viruses and spyware manually.</p>
<h2>Preventing Viruses and Spyware</h2>
<p>Prevention is the best medicine. I'm sure you've heard something like that before but its true. Knowing about how to prevent spyware goes a long way. There are many programs that offer virus+spyware/malware protection and they will monitor your computer for changes to  your registry and files. I recommend the following programs for spyware/malware protection and scans.</p>
<p><a href="http://www.safer-networking.org/index2.html">Spyware Search &amp; Destroy (Spybot S&amp;D)</a></p>
<p><a href="http://www.lavasoft.com/">Ad-aware SE (Free for personal use)</a><a href="http://www.malwarebytes.org/"></a></p>
<p><a href="http://www.malwarebytes.org/">Malware Bytes</a></p>
<h2>Steps To Remove Viruses and Spyware Manually</h2>
<ol>
<li><strong>Download and Update 1 of the above software (or all 3! [recommended])</strong><br/></li>
<li><strong>Perform scans</strong> - Use the above programs to perform viruses, spyware, and adware scans. This is usually the initial step in removal as it will remove most of the spyware/adware/malware on your computer.  I recommend using safe mode to do these scans. In safe mode, your computer does not load extra applications and drivers, only the bare minimum need to run  your operating system, so these programs will have an easier time removing/deleting files from these viruses. There are different ways to get into Windows Safe Mode. On my computer, I turn off the power and turn the computer on. I keep hitting the F5 key until i get a prompt asking how I want to boot. I select safe mode and let it load. On your computer it may be a different F  key...like F7.<br/></li>
<li><strong>Check your startup</strong> <strong>using  msconfig </strong> - Now that we have run scans and have done an initial clean on our computer. We can check our startup. Hit Start, then Run and type msconfig. Hit OK. Click the Startup tab, and look through the list. For the most part, anything here can really be unchecked. Try to look at the file path and the name of the checked items, this will usually give you a hint of what is what. Example: Logitech Quickcam Driver -&gt; This is probably your camera driver, dont disable it. Once you go through the list and uncheck unwated items, click apply. Restart when you are prompted to. After restarting, click Do Not Show This Message Again and click OK.<br/></li>
<li><strong>HijackThis! - </strong><a href="http://free.antivirus.com/hijackthis/">Download Hijack This</a> Hijack This is a program that will scan your computer and show information about changes that have been made to it. Download and install hijack this and run a scan and produce a log. You can copy and paste your log into this site: <a href="http://hjt.networktechs.com/">http://hjt.networktechs.com/</a> and it will guide you onto what to remove (To remove items, place checks next to them and click Fix Selected Issues) .  Also, there are many forums which will let you paste a HJT log and other kind users will help you analyze it. Alternatively, you can post your HJT log in the comments below and I will try to assist you with it.<br/></li>
<li><strong>CC Cleaner  - </strong><a href="http://www.piriform.com/ccleaner">Download CC Cleaner</a> CC Cleaner will help remove temporary browser files, cookies, recycle bin, some program cache info. It is a good idea to run this program every once in a while just to help free up some space and keep your programs running in top shape.<br/></li>
<li><strong>Reformat (Last Resort/First Resort) - </strong>A lot of viruses and spyware can be removed with the above steps, however, sometimes you get very pesky viruses and programs.  If you think the malware/adware/virus will be extremely difficult to remove, or if it is extremely malicious (i.e rootkit viruses that attach to windows files) sometimes the BEST option is to reformat and reinstall windows. This is the ONLY way to ensure your computer is COMPLETELY free of spyware. The programs listed above often do the trick. Sometimes you will do Steps 1-5 and then decide to reformat anyways because they couldn't completely remove the infection. Sometimes when I get extremely pesky infections, I reformat as my first resort. A backup, reformat and reinstall of all my programs takes me less than 4hours. Sometimes, virus removal and infection cleaning takes more than this.<br/></li>
</ol>
<p><br/><br />
Hope this guide helps you remove viruses and spyware infections. I often get paid to clean and remove spyware, adware, and viruses, however, I don't mind sharing how I do it. Most people just cant be bothered with it, but, if you can take the time to do the steps above, you will have a cleaner, faster, better, smoother running computer.<br />
Comment if this helped you!<br />
Paste your HJT logs if you need assistance.</p>
]]></content:encoded>
			<wfw:commentRss>http://theinfiniteloopblog.com/gen/pc-maintenance/how-to-remove-viruses-and-spyware-manually/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

