<?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>XprsYrslf &#187; Coding &#38; Web Design</title>
	<atom:link href="http://xprsyrslf.be/feed/" rel="self" type="application/rss+xml" />
	<link>http://xprsyrslf.be</link>
	<description>by Jeroen Op &#039;t Eynde</description>
	<lastBuildDate>Wed, 02 Dec 2009 12:29:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to: Cheap Professional Hosting</title>
		<link>http://xprsyrslf.be/2009/11/26/how-to-cheap-professional-hosting/</link>
		<comments>http://xprsyrslf.be/2009/11/26/how-to-cheap-professional-hosting/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 06:32:32 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Hosting & Domain]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=502</guid>
		<description><![CDATA[As a student, I'm always searching for ways to reach my goal as cheap as possible. Today I needed to set up a hosting for a project I'm working on. The hosting needs to be reached with a top-level domain and it will need an e-mail address under the same top-level domain. These things are important to look legitimate to the visitor.]]></description>
			<content:encoded><![CDATA[<p><a href="https://www.zoneedit.com/"><img class="alignright" src="https://www.zoneedit.com/img/zoneeditpower.gif" alt="" width="88" height="31" /></a>As a student, I&#8217;m always searching for ways to reach my goal as cheap as possible. Today I needed to set up a hosting for a project I&#8217;m working on. The hosting needs to be reached with a top-level domain and it will need an e-mail address under the same top-level domain. These things are important to look legitimate to the visitor.</p>
<p>Let&#8217;s get started. First we&#8217;ll need a domain name of course. You can find them at <a href="http://www.google.com/search?q=domain+name">several places</a>. Don&#8217;t buy any hosting at all, just make sure you can change the name servers of the domain. I can help you to get a cheap domain name, please contact me personally for more information.</p>
<p>Next part is to create an account on <a href="http://zoneedit.com">ZoneEdit.com</a>. ZoneEdit is a free DNS service and domain manager. At first <a href="http://www.zoneedit.com/signup.html">Signup</a>, you can choose for a free trial of  5 zones(=5 domains). I recommend you to use accurate information. You&#8217;ll receive an e-mail with your login information. After you <a href="http://www.zoneedit.com/auth/">login</a>, you can start adding zones, look for the link &#8216;Add Zones&#8217;. Now enter your domain name and click &#8216;Add Zone&#8217;. It will create a default configuration with a MailForward™ so all e-mail traffic will get redirected to your account.</p>
<p>To give ZoneEdit the control over your domain, we need to change the name servers of your domain. Most likely the name servers given by ZoneEdit will be ns4.zoneedit.com and ns8.zoneedit.com, to be sure just just check the box on top of the configuration page. You probably have to ask your provider (where you&#8217;ve bought your domain) to do that for you, if not they should explain how you can. When the name servers get set, it still can take a few hours until it is propagated.</p>
<p>In the mean time, we&#8217;ll set up our hosting. I&#8217;ve chosen <a href="http://www.my3gb.com/">My3gb.com</a> to handle this. First of all because of the obvious 3GB of space with FTP access and second because they have support for PHP and MySQL. They are Ad-free. The only limit they have is a 1MB maximum file size, but most files for regular websites don&#8217;t reach that size. Now go and <a href="http://www.my3gb.com/register.jsp">register</a> yourself, you&#8217;ll receive an e-mail with your information if everything went correct. Next you can <a href="http://www.my3gb.com/login.jsp">login</a> and go to &#8216;Account settings&#8217;. Here you can add an extra domain to this hosting, just fill in your domain here. If you&#8217;ve read the extra information given, you&#8217;ll notice they ask you to change the name servers to the ones from my3gb. Don&#8217;t do this, it is not needed. By adding your extra domain here, My3gb will listen to that domain and show the correct website.</p>
<p>Let&#8217;s get back to ZoneEdit now, hopefully the name servers are propagated by now. If not, no worries, it can take some time. We can already set the WebForward and an Alias. First we&#8217;ll do a WebForward, just pick the menu item or click on &#8216;WebForwards&#8217; in the overview. Put in as destination &#8216;http://www.domain.tld&#8217; where domain.tld is your actual domain. and click &#8216;Add New&#8217;. After this you will be asked to redirect &#8216;http://www.domain.tld&#8217; to &#8217;http://www.domain.tld&#8217; but that is just ridiculous, just go for the &#8216;not recommended&#8217; because that is what we want to accomplish. Now &#8216;http://domain.tld&#8217; will forward to &#8216;http://www.domain.tld&#8217;. Go back to &#8216;View&#8217; and verify your actions. Next is the Alias (or CNAME) to your hosting. Click on &#8216;Aliases&#8217; in the menu or in the overview. Enter &#8216;www&#8217; in the &#8216;Alias&#8217; box and the URL to your hosting (accountname.my3gb.com) in the &#8216;Actual Name&#8217; box and click &#8216;Add New Alias&#8217;. Go back to &#8216;View&#8217; and again verify your actions.</p>
<p>This is basically it, you&#8217;ve set up your domain in ZoneEdit.com and your hosting at My3gb.com. Your files can be uploaded to the ftp server of your My3gb account. A MailForward™ can be set via MailForwards, which is self explanatory, a tutorial on setting up your mail account with this will follow soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/11/26/how-to-cheap-professional-hosting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Open Source Software for Developers</title>
		<link>http://xprsyrslf.be/2009/08/30/using-open-source-software-for-developers/</link>
		<comments>http://xprsyrslf.be/2009/08/30/using-open-source-software-for-developers/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 23:32:03 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web Technology]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=471</guid>
		<description><![CDATA[Over the past weeks, I noticed that open source software has replaced almost any closed source application in my workflow. Most likely I started to use them because they were freely available and I don't have tons of money available for all those software packages. On the other hand, I just try to choose the application that gets the job done in the most efficient way, therefore the software doesn't have to be Open Source.]]></description>
			<content:encoded><![CDATA[<p><a href="http://opensource.org/"><img class="alignright size-full wp-image-492" title="Open Source Initiative" src="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/garland_logo.png" alt="garland_logo" width="80" height="80" /></a>Over the past weeks, I noticed that open source software has replaced almost any closed source application in my workflow. Most likely I started to use them because they were freely available and I don&#8217;t have tons of money available for all those software packages. On the other hand, I just try to choose the application that gets the job done in the most efficient way, therefore the software doesn&#8217;t have to be Open Source.</p>
<p>Here is a part of  the applications I  use almost daily.</p>
<h3>Netbeans</h3>
<p>My main IDE, a essential tool for any PHP developer. Although this open source program is written as a Java IDE, it has native support for C/C++, PHP, JavaScript and many more. It has an excellent project manager to easily manage a lot of websites, this includes support for adding libraries and automatic FTP uploads.</p>
<p>And that is just a fraction of its possibilities, the editor has live parsing, refactoring and terribly good code completion (configurable to your needs). Also version control systems are available like CVS and Subversion and a really nice diff viewer that compares files per line or even per sign.</p>
<p>This piece of software runs on Windows, Linux, Mac OS X and even Solaris. I recommend Netbeans to any Dreamweaver user who works in code mode, give it a spin and if you like it you&#8217;ll save a lot of money.</p>
<p>Website: <a href="http://www.netbeans.org/">www.netbeans.org</a></p>
<h3>Geany</h3>
<p>This tool runs quite often next to Netbeans (or sometimes instead of Netbeans). It is accualy a lightweight GTK2 based text editor and, like many editors on linux, it has syntax highlighting for a zillion languages and automatic code completion. In my latest projects, I&#8217;ve used it mainly as a Python editor/debugger and I also took my first steps in C++ with it a few months ago.</p>
<p>It has build-in support for using the compilers installed on your system and you can use any terminal you prefer. Recently they also have released some Windows builds, more info on there website, although I&#8217;d recommend using <a href="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a> on Windows.</p>
<p>Website: <a href="http://www.geany.org/">www.geany.org</a></p>
<h3>GIMP</h3>
<p>GIMP is the GNU Image Manipulation Program, in other words, the replacement for Adobe Photoshop on Linux. Probably the only, such advanced and well known, open source photo manipulation program. I mostly use it as an addition to Inkscape and recently Scribus to preform web design tasks like creating buttons and simple backgrounds.</p>
<p>Like with Netbeans, you&#8217;ll save a lot of money if you are willing to try something different. If you can&#8217;t get used to the interface, than check <a href="http://plasticbugs.com/?p=241">GIMPshop</a>, it is a hack that imitates Adobe&#8217;s Photoshop interface including menu structure. Both applications are available on Windows, Linux and Mac OS X.</p>
<p>Website: <a href="http://www.gimp.org">www.gimp.org</a></p>
<h3>Inkscape</h3>
<p>Another essential program for creating graphical designs. It has, for only being at version 0.46, a very nice set of tools on board. Most of the stuff in <a href="http://xprsyrslf.be/advertising/">Advertising</a> is made with this program and also the menu structures you see on this website. This program is a replacement for Adobe Illustrator and is available for Mac OS X, Windows and Linux. The program sometimes has its quirks and you&#8217;ll notice it is still not complete.</p>
<p>Website: <a href="http://inkscape.org">www.inkscape.org</a></p>
<h3>Scribus</h3>
<p>Scribus is fairly new to me. I&#8217;ve heard about people using Adobe&#8217;s InDesign but didn&#8217;t really know what it was. After some research and finding out it is one of the many applications from Adobe that costs too much and doesn&#8217;t even run on Linux, I&#8217;ve found Scribus as a alternative.</p>
<p>At first, it was a little confusing what the program actually did but then I found the light. Immediately I started trying out both the trial from InDesign and Scribus and tried to reproduce the design of this website. I got stuck in InDesign fairly quick because I needed to install a third party plugin or another program for just doing something essential like pattern fill, I didn&#8217;t even found usable documentation on the net. Scribus on the other hand had a <a href="http://wiki.scribus.net/index.php/Pattern">quick manual</a> which put me on the right path instant.This gave me enough courage to learn Scribus first and drop InDesign until a later point in time.</p>
<p>Like most popular open source software, this program is available on Mac OS X, Linux and Windows, there is even a build for OS/2.</p>
<p>Website: <a href="http://www.scribus.net/">www.scribus.net</a></p>
<h3>rdesktop</h3>
<p>If you need to manage Windows servers from your workstation, this tool is a necessity. It has support for any server reaching from Windows 2000 and NT 4.0 till Windows 2008. The program is very flexible and can be used at almost any resolution. It is all <a href="http://linux.die.net/man/1/rdesktop">command line</a>, but <a href="http://krdesktop.sourceforge.net/">some</a> <a href="http://sourceforge.net/projects/tsclient/">GUI</a> <a href="http://www.nongnu.org/grdesktop/">clients</a> are around. This program is available from source and is included in most linux distributions repositories. It is also known to build on Mac OS X, but Microsoft has released a <a href="http://www.microsoft.com/mac/products/remote-desktop/default.mspx">RDP client for Mac</a>. An RDP client is included by default on almost any Windows disc.</p>
<p>Website: <a href="http://www.rdesktop.org/">www.rdesktop.org</a></p>
<h3>VirtualBox</h3>
<p>At last we have VirtualBox. An easy way to simulate testing environments on your computer. This is useful for both web developers as for offline application engineers. You can test your program and make or break the system without harming your main operating system. Web developers probably use it mostly to run all kinds of web browsers on a wide variety of operating systems. It is another <a href="http://www.sun.com/">Sun Microsystems</a> application that fits in the row or Netbeans (see above), <a href="http://www.openoffice.org/">OpenOffice.org</a> and <a href="http://www.mysql.com/">MySQL</a>.</p>
<h3>Conclusion</h3>
<p>I can continue for a long time, talking about the wonderful world of open source. I&#8217;ll stop now and give you a chance to explore all of these great projects. In the end, you just have to make the decision which program you like most and think is the right one for the job and go for it. I doesn&#8217;t matter if it is open source, as long as you can see it as equals to commercial projects.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/30/using-open-source-software-for-developers/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to validate an Email address with Regex &amp; PHP -update</title>
		<link>http://xprsyrslf.be/2009/08/24/how-to-validate-an-email-address-with-regex-php/</link>
		<comments>http://xprsyrslf.be/2009/08/24/how-to-validate-an-email-address-with-regex-php/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 11:27:32 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Technology]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=419</guid>
		<description><![CDATA[Just because everyone is allowed on the Internet, it doesn't mean they are qualified to use it correctly or they are just people who make mistakes. Programmers need to correct these things and therefore validation of external input is very important for a secure website. Email addresses are one of the hardest things to validate because you got so many possibilities. ]]></description>
			<content:encoded><![CDATA[<p><a href="http://xkcd.com/208/"><img class="alignright size-full wp-image-453" title="Regular Expressions on xkcd" src="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/regex.png" alt="Regular Expressions on xkcd" width="107" height="119" /></a>Just because everyone is allowed on the Internet, it doesn&#8217;t mean they are qualified to use it correctly or they are just people who make mistakes. Programmers need to correct these things and therefore validation of external input is very important for a secure website. Email addresses are one of the hardest things to validate because you got so many possibilities.</p>
<p>Validating of an email address mostly begins with a good regular expression which represents any possible email address. Searching on Google lead me to Ian Dunn, he made a nice <a onclick="this.target='_blank'" href="http://fightingforalostcause.net/misc/2006/compare-email-regex.php">list</a> on possibilities an email address can have and gathered all attempts for a regex and tested it on this list. The most accurate, near perfect, regular expression came from <a onclick="this.target='_blank'" href="http://blog.tuxz.net/archives/2009/03/27/email_validation_using_regular_expression/">Alexandre De Dommelin</a>, which I used in my script.</p>
<p>I wasn&#8217;t fully pleased with the regular expression, so I wanted to validate the domain even more. A function in PHP 4+ allows to check whether <a onclick="this.target='_blank'" href="http://en.wikipedia.org/wiki/MX_record">MX records</a> on a certain domain, just what I needed. Now the validation is perfect, I hope. The function is described below, it should be reusable in any project using PHP 4 or newer, please include credits. Code released under <a onclick="this.target='_blank'" href="http://creativecommons.org/licenses/by-sa/2.0/be/">Creative Commons Attribution-Share Alike 2.0 Belgium License</a></p>
<pre>function check_email($email) {
	//Function written by Jeroen Op 't Eynde - XprsYrslf.be
	//Creative Commons Attribution-Share Alike 2.0 Belgium License
	//Pattern from: http://fightingforalostcause.net/misc/2006/compare-email-regex.php
	$pattern = "/^[-a-z0-9~!$%^&amp;*_=+}{\'?]+(\.[-a-z0-9~!$%^&amp;*_=+}{\'?]+)*@([a-z0-9_][-a-z0-9_]*(\.[-a-z0-9_]+)*\.(aero|arpa|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|pro|travel|mobi|asia|cat|jobs|tel|[a-z][a-z])|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(:[0-9]{1,5})?$/i";
	if (function_exists('checkdnsrr')){
		$domain=strstr($email,'@');
		if(preg_match($pattern,$email) &amp;&amp; checkdnsrr($domain,"MX")) return $email; //Linux: PHP 4.3.0 &amp; Windows: PHP 5.3.0
		else return false;
	} else {
		if(preg_match($pattern,$email)) return $email; //PHP 4 or 5
		else return false;
	}
}</pre>
<p>Please report any bugs/comments here or via the <a href="contact/">contact form</a>.</p>
<p><strong>Update:</strong><br />
On debugging a project, PHP threw some notices on the  <a href="http://us3.php.net/manual/en/function.split.php">split()</a> function. It seems to be a deprecated function. I simply replaced it with the <a href="http://us2.php.net/manual/en/function.strstr.php">strstr()</a> function. Below is the line I took out.</p>
<pre>list($user,$domain) = split('@',$email);</pre>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/24/how-to-validate-an-email-address-with-regex-php/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Contactform Plugin for WordPress</title>
		<link>http://xprsyrslf.be/2009/08/22/contactform-plugin-for-wordpress/</link>
		<comments>http://xprsyrslf.be/2009/08/22/contactform-plugin-for-wordpress/#comments</comments>
		<pubDate>Sat, 22 Aug 2009 19:31:06 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=423</guid>
		<description><![CDATA[I've worked on a plugin for WordPress, actually I have been rewriting the Contact Form Captcha plugin. I've tackled out the javascript bit for generating the captcha and added a few features to the email itself.]]></description>
			<content:encoded><![CDATA[<p><a href="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/secure_email.png"><img class="alignright size-thumbnail wp-image-448" title="Secure Email" src="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/secure_email-150x150.png" alt="Secure Email" width="150" height="150" /></a> I&#8217;ve worked on a plugin for WordPress, actually I have been rewriting the <a href="http://eazeenet.in/contact-form-with-captcha-plugin-for-wordpress/">Contact Form Captcha</a> plugin (also <a href="http://wordpress.org/extend/plugins/contact-form-captcha/">here</a> on WP Extend). I&#8217;ve tackled out the javascript bit for generating the captcha and added a few features to the email itself.</p>
<p>You can download it from <a href="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/contactform.1.0.tar.gz">here</a>.</p>
<p>The code generated in the captcha will only contain alphabetic capitals between A &amp; Z, which is stronger, I&#8217;m not a security expert but 26<sup>6</sup> is a higher number than 10<sup>6</sup>. Instead of the javascript validation, it only uses server side validation. The boxes will get a red border to indicate if there was something wrong in there. This indication can be easily expanded in the source, maybe I&#8217;ll add that later. The code comparison will happen in a session, so no client side hacking possible.</p>
<p>Next big thing I did was the email validation check with regular expressions, I&#8217;ll talk more about that later. This validation should be foolproof and even checks if the domain has <a onclick="this.target='_blank'" href="http://en.wikipedia.org/wiki/MX_record">MX records</a>. Check out the function, it should be reusable in any project using PHP 4 or newer, please include credits. Code released under <a onclick="this.target='_blank'" href="http://creativecommons.org/licenses/by-sa/2.0/be/">Creative Commons Attribution-Share Alike 2.0 Belgium License</a></p>
<pre>function check_email($email) {
	//Function written by Jeroen Op 't Eynde - XprsYrslf.be
	//Creative Commons Attribution-Share Alike 2.0 Belgium License
	//Pattern from: http://fightingforalostcause.net/misc/2006/compare-email-regex.php
	$pattern = "/^[-a-z0-9~!$%^&amp;*_=+}{\'?]+(\.[-a-z0-9~!$%^&amp;*_=+}{\'?]+)*@([a-z0-9_][-a-z0-9_]*(\.[-a-z0-9_]+)*\.(aero|arpa|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|pro|travel|mobi|asia|cat|jobs|tel|[a-z][a-z])|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(:[0-9]{1,5})?$/i";
	if (function_exists('checkdnsrr')){
		list($user,$domain) = split('@',$email);
		if(preg_match($pattern,$email) &amp;&amp; checkdnsrr($domain,"MX")) return $email; //Linux: PHP 4.3.0 &amp; Windows: PHP 5.3.0
		else return false;
	} else {
		if(preg_match($pattern,$email)) return $email; //PHP 4 or 5
		else return false;
	}
}</pre>
<p>I thank <a href="http://blog.tuxz.net/archives/2009/03/27/email_validation_using_regular_expression/">Alexandre De Dommelin</a> &amp; <a href="http://fightingforalostcause.net/misc/2006/compare-email-regex.php">Ian Dunn</a> for the regex research.</p>
<p>As I said, I&#8217;ve added a few features to the email that makes it more usable for different website&#8217;s. List of features:</p>
<ul>
<li>Date of Submission</li>
<li>Server&#8217;s Name (or Website&#8217;s Name)</li>
<li>IP address of person using the form</li>
<li>URL of page containing the form</li>
</ul>
<p>Like in the original plugin by Eazeenet, you can add &lt;!&#8211;contact form&#8211;&gt; anywhere you want to put it. But now it puts it exactly where you put the tag and not only below the text of that page.</p>
<p>That&#8217;s it. You can see an example of the contact form <a href="http://xprsyrslf.be/contact/">here</a>. You are free to test it with any hate mail you want. Any bugs and/or features can be reported as a reply to this post or via the contact form, of course.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/22/contactform-plugin-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XHTML to HTML plugin for WordPress</title>
		<link>http://xprsyrslf.be/2009/08/20/xhtml-to-html-plugin-for-wordpress/</link>
		<comments>http://xprsyrslf.be/2009/08/20/xhtml-to-html-plugin-for-wordpress/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 22:50:03 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Technology]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=404</guid>
		<description><![CDATA[In setting up WordPress for the use of this website, I noticed it was fully written in XHTML, while some browsers don't support the 'application/XHTML+XML' MIME type, so they get it served as 'text/html'.  So, before I get too technical, I just wanted to display the website as HTML (4.01 Strict).]]></description>
			<content:encoded><![CDATA[<p>In setting up WordPress for the use of this website, I noticed it was fully written in XHTML, while some browsers don&#8217;t support the &#8216;application/XHTML+XML&#8217; MIME type, so they get it served as &#8216;text/html&#8217;.  So, before I get too technical, I just wanted to display the website as HTML (4.01 Strict).</p>
<p>Fortunately, there was a simple plugin that solved this quickly:  <a onclick="this.target='_blank'" href="http://www.kilroyjames.co.uk/2008/07/xhtml-to-html-wordpress-plugin/">XHTML to XML plugin</a>. You can find more about the above issues on that page. For use in this website, I added 2 lines of my own, to turn onclick=&#8221;this.target=&#8217;something&#8217;&#8221;  in  onclick=&#8221;this.target=&#8217;something&#8217;&#8221;.</p>
<pre>
&lt;?php
  ...
  $xhtml[5] = '/target="([_A-Za-z]+)"/';
  ...
  $html[5] = 'onclick="this.target=\'$1\'"';
  ...
?&gt;
</pre>
<p>Thanks and <a href="http://xprsyrslf.be/about/#Accreditation">credits</a> go to John Kilroy.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/20/xhtml-to-html-plugin-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE8 display: table-cell &amp; max-width bug</title>
		<link>http://xprsyrslf.be/2009/08/18/ie8-display-table-cell-max-width-bug/</link>
		<comments>http://xprsyrslf.be/2009/08/18/ie8-display-table-cell-max-width-bug/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 20:27:44 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Easy Online Portals]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=392</guid>
		<description><![CDATA[A few days ago, a bug in EasySell appeared in Internet Explorer 8.

Apparently we used max-width (and max-height) on the image in a table &#8216;td&#8217;:

table td img {
max-height: 255px;
max-width: 345px;
}

This piece of code won&#8217;t get applied by IE8, so it seems&#8230;
But google found the solution right here, thanks to the forum user AsraiLight.
To let IE8 [...]]]></description>
			<content:encoded><![CDATA[<p>A few days ago, a bug in EasySell appeared in Internet Explorer 8.</p>
<p style="text-align: center;"><a href="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/fault.png"><img class="size-full wp-image-386 aligncenter" style="width: 80%;" title="Fault Version" src="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/fault.png" alt="Fault Version" width="700" height="350" /></a></p>
<p>Apparently we used max-width (and max-height) on the image in a table &#8216;td&#8217;:<br />
<code><br />
table td img {<br />
max-height: 255px;<br />
max-width: 345px;<br />
}<br />
</code></p>
<p>This piece of code won&#8217;t get applied by IE8, so it seems&#8230;<br />
But google found the solution <a href="http://bytes.com/topic/html-css/answers/870359-ie8-display-table-cell-max-width-bug">right here</a>, thanks to the forum user <a href="http://bytes.com/topic/html-css/answers/870359-ie8-display-table-cell-max-width-bug#post3496446">AsraiLight</a>.<br />
To let IE8 apply the max-width/max-height, you have to use a fixed table layout:<br />
<code><br />
table{<br />
table-layout: fixed;<br />
}<br />
</code></p>
<p>This made it look like it is supposed to:</p>
<p style="text-align: center;"><a href="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/correct.png"><img class="size-full wp-image-385 aligncenter" style="width: 80%;" title="Correct Version" src="http://xprsyrslf.be/wordpress/wp-content/uploads/2009/08/correct.png" alt="Correct Version" width="700" height="350" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/18/ie8-display-table-cell-max-width-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Big Ask Again</title>
		<link>http://xprsyrslf.be/2009/08/17/the-big-ask-again/</link>
		<comments>http://xprsyrslf.be/2009/08/17/the-big-ask-again/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 00:34:33 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Environmental]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=350</guid>
		<description><![CDATA[The Big Ask Again, Act Now!

]]></description>
			<content:encoded><![CDATA[<p><a onclick="this.target='_blank'" href="http://www.thebigaskagain.be/spip.php?rubrique11">The Big Ask Again</a>, Act Now!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="wmode" value="transparent" /><param name="src" value="http://www.youtube.com/v/-kRP5x2MsAw&amp;hl=en&amp;fs=1&amp;rel=0" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/-kRP5x2MsAw&amp;hl=en&amp;fs=1&amp;rel=0" wmode="transparent" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/17/the-big-ask-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New design &amp; WordPress</title>
		<link>http://xprsyrslf.be/2009/08/17/new-design-wordpress/</link>
		<comments>http://xprsyrslf.be/2009/08/17/new-design-wordpress/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 23:17:26 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://xprsyrslf.be/?p=339</guid>
		<description><![CDATA[XprsYrslf got a new design, actually a whole upgrade. The website is now running on the powerful WordPress Platform and a handful of plugins. The design itself is written as a WordPress template.
]]></description>
			<content:encoded><![CDATA[<p>XprsYrslf got a new design, actually a whole upgrade. The website is now running on the powerful <a href="http://wordpress.org/" target="_blank">WordPress Platform</a> and a handful of <a href="about/#Accreditation">plugins</a>. The design itself is written as a WordPress template.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/08/17/new-design-wordpress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>EasySell Top 100 &amp; Python</title>
		<link>http://xprsyrslf.be/2009/07/28/easysell-top-100-python/</link>
		<comments>http://xprsyrslf.be/2009/07/28/easysell-top-100-python/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 17:50:11 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Easy Online Portals]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://localhost/~jeroen/wordpress/?p=94</guid>
		<description><![CDATA[I finished a new website today: EasySell Top 100, All bestsellers and newest releases in one place! A website almost unique in its kind. On this project I have put my self-learned Python writing skills to use. There are plans for more features and a top 100 of ringtones.
Stay Tuned!
]]></description>
			<content:encoded><![CDATA[<p>I finished a new website today: <a rel="external" href="http://easyselltop100.com/">EasySell Top 100</a>, All bestsellers and newest releases in one place! A website almost unique in its kind. On this project I have put my self-learned <a rel="external" href="http://python.org/">Python</a> writing skills to use. There are plans for more features and a top 100 of ringtones.<br />
Stay Tuned!</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/07/28/easysell-top-100-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating and writing an ISO to a CD</title>
		<link>http://xprsyrslf.be/2009/06/14/linux-creating-and-writing-an-iso-to-a-cd/</link>
		<comments>http://xprsyrslf.be/2009/06/14/linux-creating-and-writing-an-iso-to-a-cd/#comments</comments>
		<pubDate>Sun, 14 Jun 2009 20:52:17 +0000</pubDate>
		<dc:creator>Jeroen</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://localhost/~jeroen/wordpress/?p=95</guid>
		<description><![CDATA[Writing directory to a CD.
First convert directory to an iso:
mkisofs -rlJ -relaxed-filename  -o nameof.iso directory
Then write iso to CD:
cdrecord dev=/dev/scd0 -eject -speed=16 nameof.iso
CD device can be elsewhere.
]]></description>
			<content:encoded><![CDATA[<p>Writing directory to a CD.</p>
<p>First convert directory to an iso:<br />
<code>mkisofs -rlJ -relaxed-filename  -o nameof.iso directory</code></p>
<p>Then write iso to CD:<br />
<code>cdrecord dev=/dev/scd0 -eject -speed=16 nameof.iso</code></p>
<p>CD device can be elsewhere.</p>
]]></content:encoded>
			<wfw:commentRss>http://xprsyrslf.be/2009/06/14/linux-creating-and-writing-an-iso-to-a-cd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
