<?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"
	>

<channel>
	<title>.binaryninja</title>
	<atom:link href="http://www.binaryninja.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.binaryninja.co.uk</link>
	<description>01000100 01101111 01101110 00100111 01110100 00100000 01111001 01101111 01110101 00100000 01101000 01100001 01110110 01100101 00100000 01100010 01100101 01110100 01110100 01100101 01110010 00100000 01110100 01101000 01101001 01101110 01100111 01110011 00100000 01110100 01101111 00100000 01100100 01101111 00111111</description>
	<pubDate>Sat, 30 Aug 2008 05:09:21 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Top Wordpress plugins for SEO</title>
		<link>http://www.binaryninja.co.uk/2008/07/top-wordpress-plugins-seo/</link>
		<comments>http://www.binaryninja.co.uk/2008/07/top-wordpress-plugins-seo/#comments</comments>
		<pubDate>Sun, 27 Jul 2008 08:45:55 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[SEO]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<category><![CDATA[Web Development]]></category>

		<category><![CDATA[wordpress plugins seo seoslug sitemap google wassup sta]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/?p=67</guid>
		<description><![CDATA[I have been chasing the webmasters holy grail recently of trying to drive more traffic into this site including looked at a number of different areas such as SEO and social bookmarking. I have found a number of Word Press plugins which have made the process a lot easier. How successful they are, only time [...]]]></description>
			<content:encoded><![CDATA[<p>I have been chasing the webmasters holy grail recently of trying to drive more traffic into this site including looked at a number of different areas such as SEO and social bookmarking. I have found a number of Word Press plugins which have made the process a lot easier. How successful they are, only time will tell but I guess if you are reading this&#8230;&#8230;</p>
<p><a href="http://wordpress.org/extend/plugins/google-sitemap-generator/">Google XML Sitemaps</a> - Automatically generates your sitemap files whenever you add a new post and pings google, ask, msn and yahoo (ID required). Top banana in my book. Its very configurable with a host of options including allowing you to add additional URL&#8217;s which may live outside your blog, changing priorities, frequencies, content, etc, etc.</p>
<p><a href="http://www.g-loaded.eu/2006/01/05/add-meta-tags-wordpress-plugin/">Add Meta Tags</a> - An easy way to add meta information to your posts such as Keywords and Description.</p>
<p><a href="http://www.addthis.com">AddThis Social Bookmarking Widget</a> (drop-down) - I tried this but actually opted for the manually embedded PHP version instead (see their site for details). I found it allowed me a bit more control over the positioning and styling but its down to personal preference. Still a handy addition to the blog.</p>
<p><a href="http://wordpress.org/extend/plugins/seo-slugs/">SEO Slugs</a> - This is a great little plugin which strips out the non important words from your Permalinks. This can help with the SEO process as it makes the links more relevant stripping out words like &#8216;I&#8217;, &#8216;you&#8217;, &#8216;and&#8217;, etc.. However, I did have problems as my original permalinks were set to Numeric (which would render the use of SEOSlug fairly pointless. Check out my quick hack for fixing this here. However, I did stumble across a few problems but have <a href="http://www.binaryninja.co.uk/2008/07/switching-wordpress-permalinks-type-breaks-site-links/">detailed the fix here.</a></p>
<p><a href="http://wordpress.org/extend/plugins/wassup/">WASSUP</a> - After you have completed your SEO work for the day, you&#8217;ll probably want to sit back and watch whats happening. If so, Wassup is an amazing plugin allows you to view realtime stats. No more waiting for Plesk or Google Analytics to update the next day. What this really means is that I can see you reading this.. Yes you.. I can see you&#8230; This plugin has a number of configurable options and also impressively allows you to track potential hacking attempts against word press. </p>
<p>Note: Always make sure you keep your plugins up to date. Failure to do so could leave your site open for hacking and you could be missing out on lots of lovely new features!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2008/07/top-wordpress-plugins-seo/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Switching wordpress permalinks type breaks site links</title>
		<link>http://www.binaryninja.co.uk/2008/07/switching-wordpress-permalinks-type-breaks-site-links/</link>
		<comments>http://www.binaryninja.co.uk/2008/07/switching-wordpress-permalinks-type-breaks-site-links/#comments</comments>
		<pubDate>Sun, 27 Jul 2008 07:13:31 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[.htaccess Tips]]></category>

		<category><![CDATA[SEO]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<category><![CDATA[Web Development]]></category>

		<category><![CDATA[hacks]]></category>

		<category><![CDATA[redirects]]></category>

		<category><![CDATA[sitemaps]]></category>

		<category><![CDATA[sitemaps.xml]]></category>

		<category><![CDATA[tips]]></category>

		<category><![CDATA[tutorials]]></category>

		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/?p=60</guid>
		<description><![CDATA[On researching SEO techniques and stumbling across the wordpress plugin, SEOSlug I realised that the permalink method I had employed on this site was not the best. 
So I quickly popped in to the admin tool and swapped the Permalinks for the site over to use &#8216;Month and Name&#8217; instead of the previously chosen &#8216;Numeric&#8217;. [...]]]></description>
			<content:encoded><![CDATA[<p>On researching SEO techniques and stumbling across the wordpress plugin, SEOSlug I realised that the permalink method I had employed on this site was not the best. </p>
<p>So I quickly popped in to the admin tool and swapped the Permalinks for the site over to use &#8216;Month and Name&#8217; instead of the previously chosen &#8216;Numeric&#8217;. However, I doing this, I quickly realised that all my existing links were now broken (including any Search Engine listings, backlinks, etc, etc) so I swapped it back to ensure the site wasn&#8217;t smashed for too long. </p>
<p>Now, there may be a official word press method for handling this problem but being in a rush, I quickly devised this method to fix the issue and let the site use the new style of permalinks.</p>
<p>The basis of this plan was to run and compare a sitemap.xml file from the old and new style permalinks and then use 301 redirects within the .htaccess to redirect after switching over. </p>
<p>1 -  Take a copy of the existing sitemap.xml file which should list all of the old urls.</p>
<p>2 -  Under Google XML Sitemap - turn off all Search Engine notification and activate the manual build option.</p>
<p>3 -  Under Permalinks, switch over to the new preferred style.</p>
<p>4 -  Under Google XML Sitemap, manually generate a new sitemap and take a copy.</p>
<p>5 -  Under Permalinks, switch back to the old Numeric style.</p>
<p>6 -  Under Google XML Sitemap, manually generate a new sitemap to match the current site.</p>
<p>7 -  Edit your .htaccess <a href="http://www.binaryninja.co.uk/2007/01/using-301-redirects/" title="adding 301 redirects">adding 301 redirect</a> for all the pages which require it (mainly just archives and posts). Add the 301 redirects after the default WordPress .htaccess entries.</p>
<p>8 -  Under Permalinks, switch over to the new preferred style for the last time.</p>
<p>9 -  Test your site to make sure your redirects work from the old permalink structure to the new.</p>
<p>10 -  Under Google XML Sitemap - turn back on all of the  Search Engine notification and save options. Then manually generate the sitemap again which should in turn notify all the search engines that you have reorganised your website.</p>
<p>This method worked for me as I don&#8217;t have a vast number of posts on this site. If you have loads, you may wish to script the generation of the .htaccess entries from comparing the two sitemap files.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2008/07/switching-wordpress-permalinks-type-breaks-site-links/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Random Image Selection</title>
		<link>http://www.binaryninja.co.uk/2008/07/random-image-selection/</link>
		<comments>http://www.binaryninja.co.uk/2008/07/random-image-selection/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 09:51:30 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[]]></category>

		<category><![CDATA[PHP Snippets]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/?p=15</guid>
		<description><![CDATA[This is a neat little trick I sometimes use to freshen up websites that suffer from heavy text content The script will use an array of predefined images that exist in a directory and choose at random one of the images from within it.

// PHP Random Image Selecter
 $arr_img_list = array('1.jpg','2.jpg','3.jpg','4.jpg','5.jpg','6.jpg','7.jpg','8.jpg','9.jpg');
 $i_lower_limit = 0;
 if(count($arr_img_list)>0){
	$i_upper_limit [...]]]></description>
			<content:encoded><![CDATA[<div align="left">This is a neat little trick I sometimes use to freshen up websites that suffer from heavy text content The script will use an array of predefined images that exist in a directory and choose at random one of the images from within it.</div>
<p><code></p>
<p>// PHP Random Image Selecter</p>
<p> $arr_img_list = array('1.jpg','2.jpg','3.jpg','4.jpg','5.jpg','6.jpg','7.jpg','8.jpg','9.jpg');</p>
<p> $i_lower_limit = 0;</p>
<p> if(count($arr_img_list)>0){<br />
	$i_upper_limit = count($arr_img_list)-1;<br />
}else{<br />
	$i_upper_limit = 0;<br />
}</p>
<p>$i_random_no = mt_rand($i_lower_limit, $i_upper_limit);</p>
<p>$str_chosen_image = $arr_img_list[$i_random_no];</p>
<p></code><br />
&lt;img src=&#8221;/random/<?=$str_chosen_image;?>&#8221; class=&#8221;border&#8221; alt=&#8221;a random picture&#8221; /&gt;</p>
<div align="left">Warning: The script as such simply displays the images in their natural format so its your responsibility to size them before dropping them in place. One good enhancement I will consider for the future would be to to add a thumbnail generating script to handle any size images.</div>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2008/07/random-image-selection/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Informing Search Engines about your Sitemaps</title>
		<link>http://www.binaryninja.co.uk/2008/07/informing-search-engines-about-your-sitemaps/</link>
		<comments>http://www.binaryninja.co.uk/2008/07/informing-search-engines-about-your-sitemaps/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 06:15:24 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[]]></category>

		<category><![CDATA[SEO]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/31</guid>
		<description><![CDATA[Whilst wondering why MSN had only indexed 2 of my pages, I stumbled across an easy way to inform multiple search engines about the presence of my Sitemap. The main three engines have agreed to check in the robots.txt file for the location of your sitemap. Heres what mine now looks like:
User-agent: *
Disallow:
Sitemap: http://www.binaryninja.co.uk/sitemap.xml.gz
I believe [...]]]></description>
			<content:encoded><![CDATA[<p>Whilst wondering why MSN had only indexed 2 of my pages, I <a href="http://www.guidetotheweb.co.uk/search_engine_sitemaps.php" title="distributing your sitemap location using robots.txt">stumbled across an easy way</a> to inform multiple search engines about the presence of my Sitemap. The main three engines have agreed to check in the robots.txt file for the location of your sitemap. Heres what mine now looks like:</p>
<p>User-agent: *<br />
Disallow:</p>
<p>Sitemap: http://www.binaryninja.co.uk/sitemap.xml.gz</p>
<p>I believe it will only work for Google, MSN and Yahoo at the moment but with this becoming a standard, hopefully new and other Search Engines will check in there as well.</p>
<p>NOTE: Make sure you have blank lines before and after the Sitemap line!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2008/07/informing-search-engines-about-your-sitemaps/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Essential Firefox Add-ons</title>
		<link>http://www.binaryninja.co.uk/2008/07/essential-firefox-add-ons/</link>
		<comments>http://www.binaryninja.co.uk/2008/07/essential-firefox-add-ons/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 10:40:36 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/30</guid>
		<description><![CDATA[There are some cracking Firefox Add-ons available lately which really help to speed up the development process. I have listed the top ones I have been using which are definitely worth having a look at. To access, inside Firefox, simply click Tools, Add-ons which will fire up the Add-ons page. You can then search for [...]]]></description>
			<content:encoded><![CDATA[<p>There are some cracking Firefox Add-ons available lately which really help to speed up the development process. I have listed the top ones I have been using which are definitely worth having a look at. To access, inside Firefox, simply click Tools, Add-ons which will fire up the Add-ons page. You can then search for the add-ons listed below or click on the links to load up the Add-on page:</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/249">HTML Validator</a> - Adds HTML validation to View page source of Firefox. The actual validation is provided by Tidy of W3C. Very handy to check your HTML code whilst you are developing and debugging. - Note not supporting Linux with current version but worked well for version 0.8.4.0 - Shame&#8230;</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/3829">Live HTTP Headers</a> - View and capture HTTP headers of a page whilst you are browsing. Allows you to determine what communications are actually taking place between the browser and the server. Can be a life saver when the unexpected is occurring.</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/1843">FireBug</a> - Describes itself as Web Development Evolved. It integrates with Firefox to add a wealth of development absed tools available whilst browsing and working. You can edit, debug, and monitor CSS, HTML, and JavaScript live in any web page, allowing to check whether mods will fix issues without the whole save, alt-tab, f5 cycle everytime! There are also a serious number of experimental additional plugins which will work with Firebug, including an exciting one called <a href="https://addons.mozilla.org/en-US/firefox/addon/6149">FirePHP</a> which allows you to print out directly to the Firebug Console from PHP. I havn&#8217;t tried this (yet) but the potential sounds amazing.</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/684">FireFTP</a> - FTP Client built into Firefox (opens as a new Tab). Very handy and useful FTP client although can be a little slow sometimes (especially if you have multiple windows and many tabs open all at once)&#8230;</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/590">ShowIP</a> - Shows the IP address of the current page in your status bar. For those of us constantly modifying Host files to point from development to live servers, this is a life saver!</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/35">IE View</a> - Look don&#8217;t have a go at me.. Its the customers who insist things should work on IE.. For those who do have to use Windows, this handy tool allows you to easily launch pages in IE.. Saves you having to look for that Little Blue Icon that claims &#8216;it&#8217; is the Internet eh?</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/966">Tamper Headers</a> - Probably the most important (and potentially dangerous if used incorrectly) add-in for the web development process. This amazing plugin allows you to use tamperdata to view and modify HTTP/HTTPS headers and post parameters.. Effectively, when enabled you get the option to intercept what is being posted to the Server, so you can modify the data being sent. Great for tweaking hidden form fields for testing and debugging without having to modify the PHP code! Enjoy but play safe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2008/07/essential-firefox-add-ons/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Cowon iAudio D2 portable multimedia player - Wow&#8230;</title>
		<link>http://www.binaryninja.co.uk/2008/07/cowon-iaudio-d2-wow/</link>
		<comments>http://www.binaryninja.co.uk/2008/07/cowon-iaudio-d2-wow/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 07:11:18 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[Entertainment]]></category>

		<category><![CDATA[Random Stuff]]></category>

		<category><![CDATA[cowon mp3 multimedia review flash linux]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/27</guid>
		<description><![CDATA[ok, Its been a while since my last post but I am hopefully back to provide you with some more (hopefully) useful information. However, before I get going, I want to quickly tell you about my latest buy, a Cowon iAudio D2 portable multimedia player. 
Why did I not go for a Sony Walkman (DRM [...]]]></description>
			<content:encoded><![CDATA[<p>ok, Its been a while since my last post but I am hopefully back to provide you with some more (hopefully) useful information. However, before I get going, I want to quickly tell you about my latest buy, a Cowon iAudio D2 portable multimedia player. </p>
<p>Why did I not go for a Sony Walkman (DRM issues&#8230;.), a Ipod (Baaah, sheeep), any of the other masses of MP3 players available on the market (mostly because of lack of linux support) so I choose the Cowon iAudio D2. With features such as FM radio, 8Gb of storage, support for OGG and FLAC files (saving me spending a lot of time converting my existing collection), amazing battery life and also the all important SD expansion slot allowing me future upgrades to the storage.</p>
<p>And boy, am I pleased with it! I won&#8217;t review it as there is a <a href="http://www.anythingbutipod.com/archives/2007/04/cowon-iaudio-d2-review.php" title="Cowon iAudio D2 review">fairly detailed review</a> for it available but I am impressed and glad I didn&#8217;t bow down to the pressure of the masses and get an iPod.</p>
<p>Youtube Based Review:</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/Byd_zguHLEg&#038;hl=en&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><embed src="http://www.youtube.com/v/Byd_zguHLEg&#038;hl=en&#038;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2008/07/cowon-iaudio-d2-wow/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sitemap Generator Plugin for WordPress</title>
		<link>http://www.binaryninja.co.uk/2007/03/sitemap-generator-plugin-for-wordpress/</link>
		<comments>http://www.binaryninja.co.uk/2007/03/sitemap-generator-plugin-for-wordpress/#comments</comments>
		<pubDate>Sat, 17 Mar 2007 14:17:32 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[SEO]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/25</guid>
		<description><![CDATA[Have just installed the Sitemap Generator 2.7.1 Plugin for WordPress and I&#8217;m extremely impressed. Hassle free installation and great results which will keep Google informed of what I am doing. 
The plugin automatically rebuilds when I add a new post and then pings Google to let them know I have made an update. 
The Binary [...]]]></description>
			<content:encoded><![CDATA[<p>Have just installed the <a href="http://www.arnebrachhold.de/2005/06/05/google-sitemaps-generator-v2-final#P18INST">Sitemap Generator 2.7.1 Plugin for WordPress</a> and I&#8217;m extremely impressed. Hassle free installation and great results which will keep Google informed of what I am doing. </p>
<p>The plugin automatically rebuilds when I add a new post and then pings Google to let them know I have made an update. </p>
<p>The Binary Ninja site map is viewable <a href="http://www.binaryninja.co.uk/sitemap.xml">here</a>.</p>
<p>Don&#8217;t forget to create both your sitemap.xml and sitemap.xml.gz files and give them write permissions before you use the plugin to build the sitemaps.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2007/03/sitemap-generator-plugin-for-wordpress/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Choosing the right Domain Name provider</title>
		<link>http://www.binaryninja.co.uk/2007/03/choosing-the-right-domain-name-provider/</link>
		<comments>http://www.binaryninja.co.uk/2007/03/choosing-the-right-domain-name-provider/#comments</comments>
		<pubDate>Thu, 15 Mar 2007 09:01:20 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[Domain Names]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/24</guid>
		<description><![CDATA[In the past I have transferred a large number of domain names across to new providers and I would quickly like to remind people to make the right choice in the first place to avoid hassle later on.
There are a number of bad practices going on with the registration of domain names and its important [...]]]></description>
			<content:encoded><![CDATA[<p>In the past I have transferred a large number of domain names across to new providers and I would quickly like to remind people to make the right choice in the first place to avoid hassle later on.</p>
<p>There are a number of bad practices going on with the registration of domain names and its important to make sure that you don&#8217;t fall prey to them. If someone is registering it on your behalf don&#8217;t forget to ask the following:</p>
<p>1) Will the domain name be registered in my name?</p>
<p>Please make sure it is otherwise you could experience problems in the future trying to either retain control of the domain or even being able to use it at all. I know of one company that ended up having to buy and use a completely new domain name when they fell out with their web designer who had registered it in their name and then refused to release it back to them.</p>
<p>2) Does the provider charge an exiting fee if I wish to transfer to a new provider in the future?</p>
<p>In my opinion, this is the worst one of all. You have paid for the domain name registration for two years and then after a while you feel you need to move it to a new provider (maybe to put it with your other domain names in one place). Some companies feel that it is acceptable to charge an &#8216;administration fee&#8217; or &#8216;exiting charge&#8217;. Bearing in mind the work they need to undertake to transfer a domain name is minimal and they have already profited from the original purchase. Always check this before buying.</p>
<p>3) Who is responsible for domain renewals?</p>
<p>You also need to ask what processes are in place to ensure that the domain name will get renewed. What email address will be contacted when its due for renewal and who monitors that address. Its no good if the guy leaves the company and the renewal notification gets bounced into oblivion.</p>
<p>In short, choose your domain name provider carefully and always ensure the domain is  registered using your name. Preferably, register it yourself as you can always pass over your control panel login details to a third party if they need to make changes to where it is pointing. If a third party (eg, your web designer) is offering to register the domain on your behalf, ask yourself why? The profit on domain names is fairly minimal unless they are being marked up.</p>
<p>Don&#8217;t forget to check out my <a title="Recommended Domain Name Providers" href="http://www.binaryninja.co.uk/domain-names/">recommended domain name providers</a> if you are looking for a safe option.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2007/03/choosing-the-right-domain-name-provider/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Building development machines the easy way</title>
		<link>http://www.binaryninja.co.uk/2007/03/building-development-machines-the-easy-way/</link>
		<comments>http://www.binaryninja.co.uk/2007/03/building-development-machines-the-easy-way/#comments</comments>
		<pubDate>Wed, 14 Mar 2007 23:15:45 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[Tips and Tricks]]></category>

		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/22</guid>
		<description><![CDATA[Not sure about you but I myself have spent many an hour trying to get a LAMP installation working properly. Installing Apache with PHP only to find your Mysql install didn&#8217;t work properly.
All this is then compressed when your deadline is looming, your laptop crashes and you need to rebuild your machine fast so you [...]]]></description>
			<content:encoded><![CDATA[<p>Not sure about you but I myself have spent many an hour trying to get a LAMP installation working properly. Installing Apache with PHP only to find your Mysql install didn&#8217;t work properly.</p>
<p>All this is then compressed when your deadline is looming, your laptop crashes and you need to rebuild your machine fast so you can get the job finished.</p>
<p>Lets just say that this little wonder has saved my bacon a few times. <a target="_blank" title="XAMPP for Linux" href="http://www.apachefriends.org/en/xampp-linux.html">XAMPP for Linux</a>. Download, follow the very easy installation instructions and your away with a fully functioning LAMP environment including MySql, <span class="n">phpMyAdmin</span>,  Apache and PHP.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2007/03/building-development-machines-the-easy-way/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Keeping track of MySQL errors</title>
		<link>http://www.binaryninja.co.uk/2007/03/keeping-track-of-mysql-errors/</link>
		<comments>http://www.binaryninja.co.uk/2007/03/keeping-track-of-mysql-errors/#comments</comments>
		<pubDate>Mon, 05 Mar 2007 23:24:56 +0000</pubDate>
		<dc:creator>.binaryninja</dc:creator>
		
		<category><![CDATA[PHP Snippets]]></category>

		<category><![CDATA[Tips and Tricks]]></category>

		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.binaryninja.co.uk/archives/17</guid>
		<description><![CDATA[Now in a perfect world applications would never error. The code would be totally flawless, it&#8217;ll account for any input that a user can desire to throw at it and do it quietly. However, lets be realistic, even the best planned, tested and implemented code can occasionally error and its important to catch it when [...]]]></description>
			<content:encoded><![CDATA[<p>Now in a perfect world applications would never error. The code would be totally flawless, it&#8217;ll account for any input that a user can desire to throw at it and do it quietly. However, lets be realistic, even the best planned, tested and implemented code can occasionally error and its important to catch it when it does.</p>
<p>I use this particular bit of code for every site I build. It allows me to react extremely quickly should a problem occur. 99% of the time I am able to respond to the problem before the customer evens calls up and when they do call up, imagine the joy when I explain I know of the error message that they received, know how it occurred and am working on a patch at that point.</p>
<p>The following function is the staple ingredient of this. It handles the actual task of communicating the error to you. You can add anything you like in here, whether its extra logging to a file or to include more data for a particular application to allow you to track user flow but this is the basic version I use.</p>
<p><code><br />
function report_error($str_data){<br />
global $str_error_recipient, $str_app_name; $str_error_email_attribs = "From: ".$str_error_recipient."\r\n"."Reply-To: ".$str_error_recipient."\r\n";<br />
$str_error_body = "Remote IP: ".$_SERVER["REMOTE_ADDR"].&#8221;\r\n&#8221;;<br />
$str_error_body .= &#8220;Script Name: &#8220;.$_SERVER["SCRIPT_FILENAME"].&#8221;\r\n&#8221;;<br />
$str_error_body .= &#8220;Script Error: &#8220;.$str_data.&#8221;\r\n\r\n&#8221;;<br />
$str_error_body .= &#8220;MySQL Error: &#8220;.mysql_error().&#8221;\r\n\r\n&#8221;;<br />
$str_error_body .= &#8220;User Agent:&#8221;.$_SERVER["HTTP_USER_AGENT"].&#8221;\r\n\r\n&#8221;; mail($str_error_recipient, $str_app_name,  $str_error_body, $str_error_email_attribs);<br />
exit(&#8221; This site has experienced a problem.&#8221;);<br />
}</code></p>
<p>The $str_error_recipient variable and $str_app_name should be set in your configuration file and the above function included in your functions file (if you have one).There are many ways to utilise this function and handle errors but I mostly use it for the mySQL calls as follows:</p>
<p><code><br />
mysql_query($str_sql_statement) or report_error($str_sql_statement);<br />
</code></p>
<p>Don&#8217;t forget you can add extra information and also add a file or database system for extra logging,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binaryninja.co.uk/2007/03/keeping-track-of-mysql-errors/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
