<?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>Jonas Stendahl Portfolio &#187; PHP</title>
	<atom:link href="http://www.jyggen.com/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jyggen.com</link>
	<description>Web Application Developer from Uppsala, Sweden</description>
	<lastBuildDate>Tue, 13 Dec 2011 14:14:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Playback Spelförening v3</title>
		<link>http://www.jyggen.com/projects/playback-spelforening-v3/</link>
		<comments>http://www.jyggen.com/projects/playback-spelforening-v3/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 03:22:25 +0000</pubDate>
		<dc:creator>Jonas Stendahl</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Marwin AMS]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[non-profit association]]></category>
		<category><![CDATA[pback.se]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Playback Spelförening]]></category>
		<category><![CDATA[Sverok]]></category>
		<category><![CDATA[work-in-progress]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.jyggen.com/?p=181</guid>
		<description><![CDATA[I&#8217;ve been planning and working on Playback&#8217;s new site for ages but never made any real progress, but one day earlier this year after a few (pretty huge) database failures I realized: we need a new site &#8211; and we &#8230; <a href="http://www.jyggen.com/projects/playback-spelforening-v3/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been planning and working on <a title="Playback Spelförening" href="http://www.pback.se/" target="_blank">Playback&#8217;s new site </a>for ages but never made any real progress, but one day earlier this year after a few (pretty huge) database failures I realized: we need a new site &#8211; and <strong>we need it now!</strong></p>
<p>The new system (which I call Marwin AMS) is <strong>still<em> </em>under development</strong>, but is stable and has enough features to be released. It&#8217;s<strong> written from scratch by me</strong> with PHP, bash scripts and a MySQL database on the backend and XHTML, CSS and JavaScript (jQuery) on the frontend. New and improved features (implemented or planned) on the site includes, but is <strong>not</strong> limited to:</p>
<ul>
<li>Play-Penis Points™</li>
<li>Advanced Forums System</li>
<li>Notifications API</li>
<li>FTP / <a title="Playback Medlemsuppladdning" href="http://img.pback.se/" target="_blank">Image Uploader</a> integration</li>
<li>Game Server Management</li>
<li>Event Planner / Calendar</li>
<li>Minecraft Statistics and Achivements</li>
<li>User Quote Database</li>
<li>Photo Gallery</li>
</ul>
<p>Playback Spelförening is a non-profit association founded in 2008 which I&#8217;ve been the chairman of during 2008, 2009 and 2011. Our main purpose is to host LAN Parties and other gaming related events, and since most of the members are old buddies from high school, it&#8217;s a great way to keep in touch!</p>
<p>During 2010 Playback bought a server (to host game servers, user-uploaded files etc.), which greatly boosted the user activity online, so the main focus of the new site was to help the members to interact with the server and develop new features which integrated with our various services.</p>
<p>As I said above, the site is still under <em>active</em> development &#8211; so check back often to see our <a title="Playback Spelförening" href="http://www.pback.se/" target="_blank"><strong>new awesome site</strong> </a>come to life!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jyggen.com/projects/playback-spelforening-v3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Minify &#8211; compress your files on the fly!</title>
		<link>http://www.jyggen.com/code/minify-compress-your-files-on-the-fly/</link>
		<comments>http://www.jyggen.com/code/minify-compress-your-files-on-the-fly/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 12:18:35 +0000</pubDate>
		<dc:creator>Jonas Stendahl</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[compress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Minify]]></category>
		<category><![CDATA[on the fly]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.jyggen.com/?p=116</guid>
		<description><![CDATA[Are you, like me, one of those who keeps JavaScript and CSS in multiple files for better structure and who don’t compress the code because you want to have the readability intact in your development environment? Well, then this script &#8230; <a href="http://www.jyggen.com/code/minify-compress-your-files-on-the-fly/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Are you, like me, one of those who keeps JavaScript and CSS in multiple files for better structure and who don’t compress the code because you want to have the readability intact in your development environment? Well, then this script is for you!</p>
<p>I give you Minify, a script which combines and compress your files on the fly. This way the files get smaller and the client only have to make one request to the server. Just include the class in the top of the page, somewhere before you include your CSS/JavaScript, give it a few parameters and it will do everything for you. Now you can have how many files you want and edit whenever you want as long as you include the CSS/JavaScript file generated by Minify.<span id="more-116"></span></p>
<p>But, won’t it slow down the execution of the page to run Minify every time? No! First of all, you’ll barely notice when the script actually runs because it doesn’t take any time at all. And second, it won’t run the script if there is no change to the source files. The script is smart enough to store the hash of every file in a cache file and will just check against it.</p>
<p>I made the function which Minify is based on a few months ago when I tried to figure out a way to compress my files automatically and I’ve used it for two or three projects. I realized that there should be an easier way to integrate the script into an existing code and that’s why I made Minify. The original script used PHP’s function filemtime() to check if a file had been modified since the minified version was generated. It work decently, but if you copy/paste an old file from another project it will still have the same modified time and therefore will the minified version be newer. This and a lot of other stuff were fixed when I changed to the existing system, which is faster too!</p>
<p>So, what’s next for Minify? Well, first of all I want to fix all the issues listed below and more optimization. A nice thing would be native JavaScript and CSS compression in Minify.class.php to keep it in one file. Can you think of something else to add? Suggest it!</p>
<p>Please comment below what you think about the script. Don&#8217;t be afraid to report issues, improvements, feedback etc. below and remeber to tell your friends! <img src='http://www.jyggen.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Download: </strong>Minify is now hosted on <a href="https://github.com/jyggen/Minify">GitHub</a>, fetch the latest source code there!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jyggen.com/code/minify-compress-your-files-on-the-fly/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Store your passwords in a secure way!</title>
		<link>http://www.jyggen.com/code/store-your-passwords-in-a-secure-way/</link>
		<comments>http://www.jyggen.com/code/store-your-passwords-in-a-secure-way/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 18:38:38 +0000</pubDate>
		<dc:creator>Jonas Stendahl</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[algorithm]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[salt]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.jyggen.com/?p=77</guid>
		<description><![CDATA[I was writing a basic register- and login script yesterday, and when I did the part where it hashes the password with a salt I realized that there should be a more secure way to store passwords than just running &#8230; <a href="http://www.jyggen.com/code/store-your-passwords-in-a-secure-way/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I was writing a basic register- and login script yesterday, and when I did the part where it hashes the password with a salt I realized that there should be a more secure way to store passwords than just running them through md5() or sha1(), so I wrote this function:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> password<span style="color: #009900;">&#40;</span><span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #000088;">$username</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saltglob</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'2c62f9eb917de737b8184b8e5a793c89'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>   
&nbsp;
	<span style="color: #666666; font-style: italic;">/* save string length of username, password and salt */</span>
	<span style="color: #000088;">$userlen</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$username</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$passlen</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$password</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$saltlen</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$saltglob</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* split username, password and salt into string length + 1 */</span>
	<span style="color: #000088;">$user</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$userlen</span> <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span> ? <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$username</span><span style="color: #339933;">,</span> <span style="color: #000088;">$username</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #990000;">str_split</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$username</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$userlen</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$pass</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$passlen</span> <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span> ? <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #000088;">$password</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #990000;">str_split</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$passlen</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$salt</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$saltlen</span> <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span> ? <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$saltglob</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saltglob</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #990000;">str_split</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$saltglob</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$saltlen</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">+</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* save ascii value of username, password and salt */</span>
	<span style="color: #000088;">$userval</span> <span style="color: #339933;">=</span> <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$username</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$passval</span> <span style="color: #339933;">=</span> <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$password</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$saltval</span> <span style="color: #339933;">=</span> <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$saltglob</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* prepare an array of arguments and a format for vsprintf */</span>
	<span style="color: #000088;">$format</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s'</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$args</span>   <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$username</span><span style="color: #339933;">,</span> <span style="color: #000088;">$userlen</span><span style="color: #339933;">,</span> <span style="color: #000088;">$passlen</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saltlen</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saltglob</span><span style="color: #339933;">,</span> <span style="color: #000088;">$user</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$user</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$pass</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$pass</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$salt</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$salt</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$userval</span><span style="color: #339933;">,</span> <span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #000088;">$passval</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saltval</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* vsprintf the arguments */</span>
	<span style="color: #000088;">$string</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">vsprintf</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$format</span><span style="color: #339933;">,</span> <span style="color: #000088;">$args</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* rsort the arguments and run vsprinf again */</span>
	<span style="color: #990000;">rsort</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$args</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$string</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">vsprintf</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$format</span><span style="color: #339933;">,</span> <span style="color: #000088;">$args</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* sort the arguments and run vsprintf again */</span>
	<span style="color: #990000;">sort</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$args</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$string</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">vsprintf</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$format</span><span style="color: #339933;">,</span> <span style="color: #000088;">$args</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* hash each vsprintf result with md5 (raw) */</span>
	<span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$string</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000088;">$password</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hash_hmac</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'md5'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$value</span><span style="color: #339933;">,</span> <span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* hash	with sha512 (raw) */</span>
	<span style="color: #000088;">$password</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hash_hmac</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'sha512'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saltglob</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">/* return an md5 hash */</span>
	<span style="color: #b1b100;">return</span> <span style="color: #990000;">hash_hmac</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'md5'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$password</span><span style="color: #339933;">,</span> <span style="color: #000088;">$username</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>This way, even if someone can produce a bruteforce against the algorithm they will never know where in the hash the salt pieces where placed. And of course we&#8217;ll salt it with a global salt (third parameter) which is hidden deep in a configuration file on our server, which requires the <em>script kiddie</em> to actually access your files to get it.</p>
<p>One thing&#8217;s for sure, I&#8217;ll use this for all my projects <img src='http://www.jyggen.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p><strong>Edit: </strong>This function has been updated several times since the initial post because I like to make stuff more complicated than they actually have to be. The most recent one is the one above though (and is kinda overkill) <img src='http://www.jyggen.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.jyggen.com/code/store-your-passwords-in-a-secure-way/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Tour 4 Dead</title>
		<link>http://www.jyggen.com/projects/tour-4-dead/</link>
		<comments>http://www.jyggen.com/projects/tour-4-dead/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 12:47:08 +0000</pubDate>
		<dc:creator>Jonas Stendahl</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Smarty]]></category>
		<category><![CDATA[Tour 4 Dead]]></category>
		<category><![CDATA[work-in-progress]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.jyggen.com/?p=68</guid>
		<description><![CDATA[Tour 4 Dead is a tournament site/system for Valve Software&#8217;s two games Left 4 Dead and Left 4 Dead 2. As a logged in user you can create tournaments, create teams with other users and participate in tournaments with that &#8230; <a href="http://www.jyggen.com/projects/tour-4-dead/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Tour 4 Dead is a tournament site/system for Valve Software&#8217;s two games Left 4 Dead and Left 4 Dead 2. As a logged in user you can create tournaments, create teams with other users and participate in tournaments with that team. There is also a few community features on the site such as forums, profiles etc.</p>
<p>This site is not finished yet, but will be in the upcoming weeks. The plan is to test the system a few months and then, if the site gets popular, expand to more games such as Modern Warfare 2 and Counter-Strike. Design is once again done by <a href="http://frdrik.se/" target="_blank">Fredrik Larsson</a>.</p>
<ul>
<li><strong>URL:</strong><em> <a href="http://t4d.jyggen.com/">preview version</a></em></li>
<li><strong>Released: </strong>not yet</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.jyggen.com/projects/tour-4-dead/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Playback Spelförening v2</title>
		<link>http://www.jyggen.com/projects/playback-spelforening-v-2/</link>
		<comments>http://www.jyggen.com/projects/playback-spelforening-v-2/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 16:28:13 +0000</pubDate>
		<dc:creator>Jonas Stendahl</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[chairman]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[non-profit association]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">https://www.jyggen.com/?p=41</guid>
		<description><![CDATA[Playback is a non-profit gaming association which I was am the chairman of. The main purpose for this association is to host LAN Parties and other gaming related things. Since most of the members are old friends from the ninth &#8230; <a href="http://www.jyggen.com/projects/playback-spelforening-v-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Playback is a non-profit gaming association which I <del>was</del> am the chairman of. The main purpose for this association is to host LAN Parties and other gaming related things. Since most of the members are old friends from the ninth grade, it&#8217;s also a nice way to stay in touch with each other after the &#8220;split up&#8221;.</p>
<p>This is one of my first <em>released</em> php sites so I feel some kind of proudness over it, even though it&#8217;s kind of messy and un-optimized. Design, XHTML and CSS made by <a href="http://frdrik.se/" target="_blank">Fredrik Larsson</a>, who is the secretary of the association.</p>
<ul>
<li><strong>URL: </strong><em>not available</em></li>
<li><strong>Released: </strong>June 6, 2008<strong> </strong><strong></strong><strong></strong><span style="color: #252525;"><strong><br />
</strong></span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.jyggen.com/projects/playback-spelforening-v-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>serieous.se</title>
		<link>http://www.jyggen.com/projects/serieous-se/</link>
		<comments>http://www.jyggen.com/projects/serieous-se/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 15:59:14 +0000</pubDate>
		<dc:creator>Jonas Stendahl</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[work-in-progress]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.jyggen.com/?p=27</guid>
		<description><![CDATA[serieous.se was a school project created in early 2009 by me and Fredrik Larsson; he made the design and I coded it. The site is (was) almost complete but is put on hold for the moment because we&#8217;re both busy &#8230; <a href="http://www.jyggen.com/projects/serieous-se/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>serieous.se was a school project created in early 2009 by me and <a href="http://frdrik.se/" target="_blank">Fredrik Larsson</a>; he made the design and I coded it. The site is (was) almost complete but is put on hold for the moment because we&#8217;re both busy with other stuff.</p>
<p>serieous.se is mainly a Swedish news site which post news and rumors about (mostly) American TV-shows e.g. Lost, Heroes, Family Guy. Around this news site we&#8217;ve build up a community with profiles, guest books, forums etc. There&#8217;s also an archive with downloadable files, an information page about every show and much more!</p>
<ul>
<li><strong>URL: </strong><em>not available</em><em></em></li>
<li><strong>Released:</strong> March 2, 2009</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.jyggen.com/projects/serieous-se/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using apc
Page Caching using apc
Database Caching 9/39 queries in 0.010 seconds using apc
Object Caching 611/703 objects using apc

Served from: www.jyggen.com @ 2012-02-07 02:10:39 -->
