<?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>Well, at least we got the duck.</title>
	<atom:link href="http://ingol.nl/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://ingol.nl/blog</link>
	<description></description>
	<lastBuildDate>Sun, 19 Feb 2012 13:50:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Stuck in Certificate Hell on my MacBook Pro</title>
		<link>http://ingol.nl/blog/2012/02/19/stuck-in-certificate-hell-on-my-macbook-pro/</link>
		<comments>http://ingol.nl/blog/2012/02/19/stuck-in-certificate-hell-on-my-macbook-pro/#comments</comments>
		<pubDate>Sun, 19 Feb 2012 13:46:52 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=838</guid>
		<description><![CDATA[I&#8217;ve got some bitbucket repositories which I wanted to access with a MacBook Pro. To access my Git repositories I had to disable certificate checking to be able to clone them:
I couldn&#8217;t find another proper way to do this. See HTTPS gibhub access &#8211; Stackoverflow
To clone mercurial repositories  [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve got some bitbucket repositories which I wanted to access with a MacBook Pro. To access my Git repositories I had to disable certificate checking to be able to clone them:</p>
<pre class="brush: plain; title: ; notranslate">
git config --global http.sslVerify false
</pre>
<p>I couldn&#8217;t find another proper way to do this. See <a href="http://stackoverflow.com/questions/3777075/https-github-access/4454754#4454754" title="HTTPS gibhub access" target="_blank">HTTPS gibhub access &#8211; Stackoverflow</a></p>
<p>To clone mercurial repositories I had to add hostfingerprints configuration and a dummy cacerts certificate. See: <a href="https://answers.atlassian.com/questions/21000/continue-operation-on-failed-certificate-verification" title="Continue operation on failed certificate verification - Atlassian Answers" target="_blank">Continue operation on failed certificate verification &#8211; Atlassian Answers</a></p>
<p>My .hgrc file:</p>
<pre class="brush: plain; title: ; notranslate">
[web]
cacerts = /etc/hg-dummy-cert.pem

[hostfingerprints]
bitbucket.org = 24:9c:45:8b:9c:aa:ba:55:4e:01:6d:58:ff:e4:28:7d:2a:14:ae:3b
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2012/02/19/stuck-in-certificate-hell-on-my-macbook-pro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Double Fine Adventure</title>
		<link>http://ingol.nl/blog/2012/02/12/double-fine-adventure/</link>
		<comments>http://ingol.nl/blog/2012/02/12/double-fine-adventure/#comments</comments>
		<pubDate>Sun, 12 Feb 2012 19:20:17 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=823</guid>
		<description><![CDATA[


]]></description>
			<content:encoded><![CDATA[<div style="width: 720px; height: 390px; position: relative; margin-left: 20px;">
<iframe style="left: 0pt; position: absolute; top: 10px;" frameborder="0" height="360px" src="http://www.kickstarter.com/projects/66710809/double-fine-adventure/widget/video.html" width="480px"></iframe><iframe style="left: 490px; top: 0pt; position: absolute;" frameborder="0" height="380px" src="http://www.kickstarter.com/projects/66710809/double-fine-adventure/widget/card.html" width="220px"></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2012/02/12/double-fine-adventure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Redirect sub-sub-domains to dynamically configured virtual hosts on the localhost.</title>
		<link>http://ingol.nl/blog/2011/11/21/redirect-sub-sub-domains/</link>
		<comments>http://ingol.nl/blog/2011/11/21/redirect-sub-sub-domains/#comments</comments>
		<pubDate>Mon, 21 Nov 2011 21:43:38 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=813</guid>
		<description><![CDATA[A colleague (thanks Danny) pointed me to this solution to host multiple development environments under a single sub-domain name.
Step 1. Configure a type A domain record by using a wildcard and a fixed sub-domain name like:
 ( why didn&#8217;t I think of that x_X )
Step 2. Enable mod_vhost_alias  [...]]]></description>
			<content:encoded><![CDATA[<p>A colleague (thanks <a href="http://www.cream.nl/" target="_blank">Danny</a>) pointed me to this solution to host multiple development environments under a single sub-domain name.</p>
<p>Step 1. Configure a type A domain record by using a wildcard and a fixed sub-domain name like: </p>
<pre class="brush: plain; title: ; notranslate">*.lab    A    127.0.0.1</pre>
<p> ( why didn&#8217;t I think of that x_X )</p>
<p>Step 2. Enable mod_vhost_alias in Apache if not already active.</p>
<p>Step 3. Configure a virtual host and use the wildcards from mod_vhost_alias to your liking, for example</p>
<pre class="brush: plain; title: ; notranslate">
&lt;VirtualHost 127.0.0.1:80&gt;
    ServerName lab.yourdomain.com
    VirtualDocumentRoot /var/my_flexible_friends/%1
&lt;/VirtualHost&gt;
</pre>
<p>would redirect myproject.lab.yourdomain.com to <em>127.0.0.1</em> and serve pages from <em>/var/my_flexible_friends/myproject</em> but would also redirect jquery.lab.yourdomain.com to <em>127.0.0.1</em> and serve pages from <em>/var/my_flexible_friends/jquery</em>.</p>
<p>Just look at the <a href="http://httpd.apache.org/docs/2.0/mod/mod_vhost_alias.html" target="_blank">mod_vhost_alias documentation</a> for more possibilities.<br />
Also a nice consistent setup to share in development teams.</p>
<p>If you happen to stumble upon apache error messages like &#8216;Request exceeded the limit of 10 internal redirects due to probable configuration error.&#8217;, just change your .htaccess file by added the rule <strong>RewriteBase /</strong>. This will most likely happen when you are using the windows hosts file instead of a real domain.</p>
<p>See also <a href="http://stackoverflow.com/questions/1027801/500-server-error-infinite-rewrite-loop-in-apache-2-2-x-with-mod-vhost-alias-vi">Stackoverflow Infinite Rewrite Loop</a></p>
<pre class="brush: plain; title: ; notranslate">
SetEnv APPLICATION_ENV development
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteBase /
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/11/21/redirect-sub-sub-domains/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I guess PhpStorm does not love OpenJDK</title>
		<link>http://ingol.nl/blog/2011/11/20/i-guess-phpstorm-does-not-love-openjdk/</link>
		<comments>http://ingol.nl/blog/2011/11/20/i-guess-phpstorm-does-not-love-openjdk/#comments</comments>
		<pubDate>Sun, 20 Nov 2011 19:49:14 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=802</guid>
		<description><![CDATA[
OpenJDK Runtime Environment (IcedTea6 1.9.10) (6b20-1.9.10-0ubuntu1~10.04.2)
OpenJDK Client VM (build 19.0-b09, mixed mode, sharing)
WARNING: You are launching IDE using OpenJDK Java runtime
THIS IS STRICTLY UNSUPPORTED DUE TO KNOWN PERFORMANCE AND GRAPHICS PROBLEMS
NOTE: If you have both Sun [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>
OpenJDK Runtime Environment (IcedTea6 1.9.10) (6b20-1.9.10-0ubuntu1~10.04.2)<br />
OpenJDK Client VM (build 19.0-b09, mixed mode, sharing)<br />
WARNING: You are launching IDE using OpenJDK Java runtime</p>
<p>THIS IS STRICTLY UNSUPPORTED DUE TO KNOWN PERFORMANCE AND GRAPHICS PROBLEMS</p>
<p>NOTE: If you have both Sun JDK and OpenJDK installed<br />
please validate either WEBIDE_JDK or JDK_HOME environment variable points to valid Sun JDK installation
</p></blockquote>
<p><a href="https://help.ubuntu.com/community/Java" title="Ubuntu Sun (Oracle) Java Installation Guide">Ubuntu Sun (Oracle) Java Installation Guide</a></p>
<pre class="brush: plain; title: ; notranslate">
sudo add-apt-repository &quot;deb http://archive.canonical.com/ lucid partner&quot;
sudo apt-get update
aptitude install sun-java6-jdk
sudo update-alternatives --config java
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/11/20/i-guess-phpstorm-does-not-love-openjdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Donating my upper lip to fight cancer (Movember Time!), please donate too!</title>
		<link>http://ingol.nl/blog/2011/10/31/donating-my-upper-lip-to-fight-cancer-movember-time-please-donate-too/</link>
		<comments>http://ingol.nl/blog/2011/10/31/donating-my-upper-lip-to-fight-cancer-movember-time-please-donate-too/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 08:57:55 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=797</guid>
		<description><![CDATA[
Movember!
]]></description>
			<content:encoded><![CDATA[<p><a title="Movember" href="http://mobro.co/orlissenberg"><img class="alignnone size-full wp-image-799" title="moustacheseason_download" src="http://ingol.nl/blog/wp-content/uploads/2011/10/moustacheseason_download.jpg" alt="" width="485" height="339" /></a><br />
<a title="Movember" href="http://mobro.co/orlissenberg">Movember!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/10/31/donating-my-upper-lip-to-fight-cancer-movember-time-please-donate-too/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disable Apache 404 ErrorDocument HTML</title>
		<link>http://ingol.nl/blog/2011/10/04/disable-apache-404-errordocument-html/</link>
		<comments>http://ingol.nl/blog/2011/10/04/disable-apache-404-errordocument-html/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 11:36:26 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=789</guid>
		<description><![CDATA[While implementing a REST service, Apache started to append HTML 404 error HTML to my custom 404 application/json response.
It seems the Windows Apache version which comes with Zend Server requires a httpd.conf entry to disable the HTML to be appended to the response:
To disable it for a 40 [...]]]></description>
			<content:encoded><![CDATA[<p>While implementing a REST service, Apache started to append HTML 404 error HTML to my custom 404 application/json response.<br />
It seems the Windows Apache version which comes with Zend Server requires a httpd.conf entry to disable the HTML to be appended to the response:</p>
<p>To disable it for a 404 error:<br />
ErrorDocument 404 &#8221; &#8221;</p>
<p>So in general:<br />
ErrorDocument <errorcode> &#8221; &#8221;</p>
<p>It&#8217;s weird though that the Linux version does not append this HTML error code by default.</p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/10/04/disable-apache-404-errordocument-html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPDoc an Array Param (in Zend Framework)</title>
		<link>http://ingol.nl/blog/2011/09/30/phpdoc-an-array-param-in-zend-framework/</link>
		<comments>http://ingol.nl/blog/2011/09/30/phpdoc-an-array-param-in-zend-framework/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 10:22:37 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=782</guid>
		<description><![CDATA[I found this code snippet which shows how array based parameters should be documented with PHPDoc (in ZF projects). The topic came up because I&#8217;m always nagging about those magic functions and magic properties in ZF and how poorly they are documented. It seems we&#8217;ve been neglecting adding PHPDoc  [...]]]></description>
			<content:encoded><![CDATA[<p>I found this code snippet which shows how array based parameters should be documented with PHPDoc (in ZF projects). The topic came up because I&#8217;m always nagging about those magic functions and magic properties in ZF and how poorly they are documented. It seems we&#8217;ve been neglecting adding PHPDoc tags a bit because PHPDoc does have support to document magic methods and magic class properties:</p>
<p><a href="http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_tags.property.pkg.html">@method Magic Properties</a></p>
<p><a href="http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_tags.method.pkg.html">@property Magic Methods</a></p>
<pre class="brush: plain; title: ; notranslate">
/**
* $args may contain the following keys:
* - var1:
* - var2:
*
* @param array @args
* @return void
*/
</pre>
<blockquote><p>Items prefixed with a &#8216;- &#8216; will be treated as bullets by phpDocumentor.</p>
<p>source: <a href="http://zend-framework-community.634137.n4.nabble.com/phpDocumentor-array-param-td659512.html">zend framework community</a></p></blockquote>
<p>I&#8217;m currently piloting PhpStorm because I had some issues with Zend Studio, it&#8217;s interesting to notice that a phpdoc line like:</p>
<pre class="brush: php; title: ; notranslate">
/*
 * @return Foo[]
 */
function getList() {
   $f = array();
   $f[] = new Foo();
   ...
   return $f;
}
</pre>
<p>triggers auto-completion in PhpStorm when looping over the return value like:</p>
<pre class="brush: php; title: ; notranslate">
$list = $this-&gt;getList();
foreach($list as $l) {
    $l-&gt;(starts auto-completion ...)
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/09/30/phpdoc-an-array-param-in-zend-framework/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Zend Tool Cheat Sheet (v1.11.10)</title>
		<link>http://ingol.nl/blog/2011/08/09/zend-tool-cheat-sheet/</link>
		<comments>http://ingol.nl/blog/2011/08/09/zend-tool-cheat-sheet/#comments</comments>
		<pubDate>Tue, 09 Aug 2011 17:29:00 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=761</guid>
		<description><![CDATA[Zend Framework Command Line Console Tool v1.11.10
Usage:
zf [--global-opts] action-name [--action-opts] provider-name [--provider-opts] [provider parameters ...]
Note: You may use &#8220;?&#8221; in any place of the above usage string to ask for more specific help information.
Example: &#8220;zf ? version&#8221; will l [...]]]></description>
			<content:encoded><![CDATA[<div style="font-size: 12px;"><strong>Zend Framework Command Line Console Tool v1.11.10</strong><br />
Usage:<br />
zf [--global-opts] action-name [--action-opts] provider-name [--provider-opts] [provider parameters ...]<br />
Note: You may use &#8220;?&#8221; in any place of the above usage string to ask for more specific help information.<br />
Example: &#8220;zf ? version&#8221; will list all available actions for the version provider.<strong>Providers and their actions:</strong></p>
<table>
<tbody>
<tr>
<td><strong>Version</strong><br />
zf show version mode[=mini] name-included[=1]<br />
Note: There are specialties, use zf show version.? to get specific help on them.<strong>Config</strong><br />
zf create config<br />
zf show config<br />
zf enable config<br />
Note: There are specialties, use zf enable config.? to get specific help on them.<br />
zf disable config<br />
Note: There are specialties, use zf disable config.? to get specific help on them.</p>
<p><strong>Phpinfo</strong><br />
zf show phpinfo</p>
<p><strong>Manifest</strong><br />
zf show manifest</p>
<p><strong>Profile</strong><br />
zf show profile</p>
<p><strong>Project</strong><br />
zf create project path name-of-profile file-of-profile<br />
zf show project<br />
Note: There are specialties, use zf show project.? to get specific help on them.</p>
<p><strong>Application</strong><br />
zf change application.class-name-prefix class-name-prefix</p>
<p><strong>Model</strong><br />
zf create model name module</p>
</td>
<td>
<p><strong>View</strong><br />
zf create view controller-name action-name-or-simple-name module</p>
<p><strong>Controller</strong><br />
zf create controller name index-action-included[=1] module</p>
<p><strong>Action</strong><br />
zf create action name controller-name[=Index] view-included[=1] module</p>
<p><strong>Module</strong><br />
zf create module name</p>
<p><strong>Form</strong><br />
zf enable form module<br />
zf create form name module</p>
<p><strong>Layout</strong><br />
zf enable layout<br />
zf disable layout</p>
<p><strong>DbAdapter</strong><br />
zf configure db-adapter dsn section-name[=production]</p>
<p><strong>DbTable</strong><br />
zf create db-table name actual-table-name module force-overwrite<br />
Note: There are specialties, use zf create db-table.? to get specific help on them.</p>
<p><strong>ProjectProvider</strong><br />
zf create project-provider name actions</td>
</tr>
</tbody>
</table>
</div>
<pre class="brush: plain; title: ; notranslate">
Examples (Windows):

zf create project ./
zf create module test
zf create controller Test index-action-included=1 test
</pre>
<p>Remarks:<br />
- The Zend Tool will maintain a xml based configuration file called &#8216;.zfproject.xml&#8217;, do not remove!<br />
- Zend Tool is case sensitive, thus &#8220;zf create module blog&#8221; and &#8220;zf create module Blog&#8221; are different commands, running them both will create 2 modules (in Windows it will only result in 1 module directory though!)<br />
- The create module command did not create a module Bootstrap file<br />
- The bootstrap file in the tests directory has a lowercase &#8216;b&#8217; which probably needs to be an uppercase like &#8216;Bootstrap.php&#8217;<br />
- <em>Note: PHPUnit is required in order to generate controller test stubs.</em><br />
- For a module Bootstrap to work, the application.ini needs <code>resources.modules = ""</code></p>
<p>A simple module Bootstrap looks like:</p>
<pre class="brush: plain; title: ; notranslate">
&lt;?php
class Yourmodulename_Bootstrap extends Zend_Application_Module_Bootstrap {
	protected function _initSomething () {
    }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/08/09/zend-tool-cheat-sheet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ZF ReCaptcha Inline Configuration Code Snippet</title>
		<link>http://ingol.nl/blog/2011/08/01/zf-recaptcha-inline-configuration-code-snippet/</link>
		<comments>http://ingol.nl/blog/2011/08/01/zf-recaptcha-inline-configuration-code-snippet/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 08:17:10 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=758</guid>
		<description><![CDATA[Somehow it&#8217;s always a pain to find the right configuration parameters and proper format in ZF which makes me reverse engineer them.
]]></description>
			<content:encoded><![CDATA[<p>Somehow it&#8217;s always a pain to find the right configuration parameters and proper format in ZF which makes me reverse engineer them.</p>
<pre class="brush: php; title: ; notranslate">
$this-&gt;captcha = new Zend_Form_Element_Captcha('captcha',
	array(
		'captcha'=&gt;array ('ReCaptcha'),
		'captchaOptions'=&gt;array (
			'pubkey'=&gt;'...',
			'privkey'=&gt;'...'
		)
	)
);
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/08/01/zf-recaptcha-inline-configuration-code-snippet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Show the LIVE Status from an OWN3D.TV Livestream with a jQuery Plugin</title>
		<link>http://ingol.nl/blog/2011/06/16/show-the-live-status-from-an-own3d-tv-livestream-with-a-jquery-plugin/</link>
		<comments>http://ingol.nl/blog/2011/06/16/show-the-live-status-from-an-own3d-tv-livestream-with-a-jquery-plugin/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 21:19:23 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[livestream]]></category>
		<category><![CDATA[own3d]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[zendframework]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=744</guid>
		<description><![CDATA[Demo
jQuery plug-in source at BitBucket
Examples of how to use the plug-in.
The jQuery OWN3D Plug-in Code.
A simple PHP &#8211; Zend Framework script to enable a cross domain request to the OWN3D API (the full project contains two, one for the live status and one for the channel information).
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ingol.nl/own3d/" target="_blank" style="font-size: 20px">Demo</a><br />
jQuery plug-in <a href="https://bitbucket.org/orlissenberg/jquery-own3d-plugin/src" target="_blank">source at BitBucket</a></p>
<p>Examples of how to use the plug-in.</p>
<pre class="brush: jscript; title: ; notranslate">
// global configuration options
$.own3d.liveurl = 'http://ingol.nl/own3d/live.php';
$.own3d.channelurl = 'http://ingol.nl/own3d/channel.php';

// A single stream
$('#own3d-cowclan').own3d({liveid:'1213', title:'COWCLAN'});
// A single stream with HD
$('#own3d-rebootgpf').own3d({liveid:'1208', title:'REBOOTGPF', hd:true});
// A single stream without title
$('#own3d-1208').own3d({liveid:'1208', hd:true, embed:true, channelid: 'orlissenberg'});
// A single channel, live streams only
$('#channel').own3d({channelid:'clgame', hd:true, embed:true});
// A single channel, live and offline streams
$('#channel-all').own3d({channelid:'clgame', hd:true, showall:true});
</pre>
<p>The jQuery OWN3D Plug-in Code.</p>
<pre class="brush: jscript; title: ; notranslate">
(function($){
  $.own3d = {
    liveurl : 'live.php',
    channelurl : 'channel.php'
  };

  $.fn.own3d = function(options) {
    return this.each(function(){
      var self = $(this);
      self.data('liveid', options.liveid);

      if (options &amp;amp;amp;&amp;amp;amp; options.liveid) {
        $.ajax({
            type: &amp;amp;quot;GET&amp;amp;quot;,
            async: true,
            data: {live_id:options.liveid},
            url: $.own3d.liveurl,
            dataType: &amp;amp;quot;jsonp&amp;amp;quot;,
            success: function(data){
              var title = (options.title) ? options.title : 'OWN3D CHANNEL ['+options.liveid+']';
              var liveclass = (options.hd) ? 'own3d-live-hd' : 'own3d-live';

              self.empty();
              self.addClass('own3d');

              var link = $('&amp;amp;lt;a/&amp;amp;gt;')
                  .attr('href','http://www.own3d.tv/live/'+options.liveid)
                  .attr('target','_blank');

              if (data.isLive &amp;amp;amp;&amp;amp;amp; data.isLive == 'true') {
                link.html(title+' - LIVE (viewers: '+data.liveViewers+' - duration: '+Math.round(parseInt(data.liveDuration) / 60)+' minutes)');

                if ((options.showthumbnail || options.embed) &amp;amp;amp;&amp;amp;amp; options.channelid) {
                  $.ajax({
                      type: &amp;amp;quot;GET&amp;amp;quot;,
                      async: true,
                      data: {channel_id : options.channelid, stream_guid : 'http://www.own3d.tv/live/'+options.liveid},
                      url: $.own3d.channelurl,
                      dataType: &amp;amp;quot;jsonp&amp;amp;quot;,
                      success: function(data){
                        if (options.showthumbnail &amp;amp;amp;&amp;amp;amp; data.thumbnail) {
                          var table = $('&amp;amp;lt;table/&amp;amp;gt;');

                          var status = $('&amp;amp;lt;td/&amp;amp;gt;').append($('&amp;amp;lt;div/&amp;amp;gt;').addClass(liveclass).append(link));
                          table.append($('&amp;amp;lt;tr/&amp;amp;gt;').append(status));

                          var thumbnail = $('&amp;amp;lt;td/&amp;amp;gt;').append($('&amp;amp;lt;img/&amp;amp;gt;').attr('src',data.thumbnail));
                          table.append($('&amp;amp;lt;tr/&amp;amp;gt;').append(thumbnail));

                          self.append(table);
                        } else if (options.embed &amp;amp;amp;&amp;amp;amp; data.title) {

                            var e = '&amp;amp;lt;iframe height=&amp;amp;quot;360&amp;amp;quot; width=&amp;amp;quot;640&amp;amp;quot; frameborder=&amp;amp;quot;0&amp;amp;quot; src=&amp;amp;quot;http://www.own3d.tv/liveembed/'+self.data('liveid')+'&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/iframe&amp;amp;gt;';
                            var table = $('&amp;amp;lt;table/&amp;amp;gt;');

                            var status = $('&amp;amp;lt;td/&amp;amp;gt;').append($('&amp;amp;lt;div/&amp;amp;gt;').addClass(liveclass).append(link));
                            table.append($('&amp;amp;lt;tr/&amp;amp;gt;').append(status));

                            var embeddedplayer = $('&amp;amp;lt;td/&amp;amp;gt;').html(e);
                            table.append($('&amp;amp;lt;tr/&amp;amp;gt;').append(embeddedplayer));

                            self.append(table);
                        };
                      },
                      error: function(XMLHttpRequest, textStatus, errorThrown){
                        // console.debug(errorThrown);
                      }
                  });
                } else {
                  self.append(link);
                  self.addClass(liveclass);
                }
              } else {
                link.html(title+' - OFFLINE');
                self.removeClass(liveclass);
                self.append(link);
              }
            },
            error: function(XMLHttpRequest, textStatus, errorThrown){
                // console.debug(errorThrown);
            }
        });
      } else if (options &amp;amp;amp;&amp;amp;amp; options.channelid) {
        var ajaxdata = {
          channel_id : options.channelid
        };
        if (options.showall) { ajaxdata.showall = 1; };

        $.ajax({
            type: &amp;amp;quot;GET&amp;amp;quot;,
            async: true,
            data: ajaxdata,
            url: $.own3d.channelurl,
            dataType: &amp;amp;quot;jsonp&amp;amp;quot;,
            success: function(data){
              self.empty();

              var embedded = true;
              for(var i=0;i&amp;amp;lt;data.streams.length;i++) {
                var stream = data.streams[i];

                var plugindata = {
                  liveid : stream.liveid,
                  title : stream.title,
                  channelid : options.channelid,
                  // embed the first, thumbnail the rest
                  showthumbnail : (options.showthumbnail) || (!(options.showthumbnail) &amp;amp;amp;&amp;amp;amp; options.embed &amp;amp;amp;&amp;amp;amp; !embedded) ? true : false,
                  embed : (options.embed) ? true &amp;amp;amp;&amp;amp;amp; embedded : false
                };

                // prevent opening multiple embedded players
                embedded = false;                

                self.append($('&amp;amp;lt;div/&amp;amp;gt;').own3d(plugindata));
              }
            },
            error: function(XMLHttpRequest, textStatus, errorThrown){
              // console.debug(errorThrown);
            }
        });
      }
    });
  }
})(jQuery)
</pre>
<p>A simple PHP &#8211; Zend Framework script to enable a cross domain request to the OWN3D API (the full project contains two, one for the live status and one for the channel information).</p>
<pre class="brush: php; title: ; notranslate">
&amp;amp;lt;?php

// Define path to application directory
define('APPLICATION_PATH', realpath(dirname(__FILE__)));

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../../apps/library'),
    get_include_path(),
)));

$liveid = isset($_GET['live_id']) ? intval($_GET['live_id']) : 0;

require_once 'Zend/Http/Client.php';
$client = new Zend_Http_Client('http://api.own3d.tv/liveCheck.php?live_id='.$liveid, array('adapter' =&amp;amp;gt; 'Zend_Http_Client_Adapter_Socket'));

$xmlstr = $client-&amp;amp;gt;request()-&amp;amp;gt;getBody();
$xml = new SimpleXMLElement($xmlstr);

require_once 'Zend/Json/Encoder.php';
header('Content-Type: application/json');

// JSONP
if (isset($_GET['callback'])) {
        echo $_GET['callback'].'('. Zend_Json_Encoder::encode(array(
        'isLive'=&amp;amp;gt;(string)$xml-&amp;amp;gt;liveEvent-&amp;amp;gt;isLive,
        'liveViewers'=&amp;amp;gt;(string)$xml-&amp;amp;gt;liveEvent-&amp;amp;gt;liveViewers,
        'liveDuration'=&amp;amp;gt;(string)$xml-&amp;amp;gt;liveEvent-&amp;amp;gt;liveDuration,
    )).')';
}
// JSON
else {
    echo Zend_Json_Encoder::encode(array(
        'isLive'=&amp;amp;gt;(string)$xml-&amp;amp;gt;liveEvent-&amp;amp;gt;isLive,
        'liveViewers'=&amp;amp;gt;(string)$xml-&amp;amp;gt;liveEvent-&amp;amp;gt;liveViewers,
        'liveDuration'=&amp;amp;gt;(string)$xml-&amp;amp;gt;liveEvent-&amp;amp;gt;liveDuration,
    ));
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/06/16/show-the-live-status-from-an-own3d-tv-livestream-with-a-jquery-plugin/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Quick Optimization League of Legends Plug-ins</title>
		<link>http://ingol.nl/blog/2011/05/15/quick-optimization-league-of-legends-plug-ins/</link>
		<comments>http://ingol.nl/blog/2011/05/15/quick-optimization-league-of-legends-plug-ins/#comments</comments>
		<pubDate>Sun, 15 May 2011 15:30:05 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=734</guid>
		<description><![CDATA[The images were eating away the low amount of bandwidth I own (see also the scary red bar on the usage summary) so I put low resolutions images on the LoL Plug-ins Demo page and centralized the image storage. If it becomes too popular I might need to re-locate though *EEK*
Thanks for visiting, come [...]]]></description>
			<content:encoded><![CDATA[<p>The images were eating away the low amount of bandwidth I own (see also the scary red bar on the usage summary) so I put low resolutions images on the LoL Plug-ins Demo page and centralized the image storage. If it becomes too popular I might need to re-locate though *EEK*</p>
<p>Thanks for visiting, come again!</p>
<p>p.s. High resolution images are still available in the code repository.<br />
p.p.s. Clicking on advertisement banners will give me more bandwidth or just donate :)</p>
<p><a href="http://ingol.nl/blog/wp-content/uploads/2011/05/OhShhhhhh.png"><img class="size-full wp-image-735 alignnone" title="OhShhhhhh" src="http://ingol.nl/blog/wp-content/uploads/2011/05/OhShhhhhh.png" alt="" width="521" height="265" /></a></p>
<p>*update* I put the images on the <a href="http://aws.amazon.com/s3/">Amazon Simple Storage Service (Amazon S3)</a> which should provide some stress relief, well at least it scales better!</p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/05/15/quick-optimization-league-of-legends-plug-ins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Help me get friends!</title>
		<link>http://ingol.nl/blog/2011/05/11/help-me-get-friends/</link>
		<comments>http://ingol.nl/blog/2011/05/11/help-me-get-friends/#comments</comments>
		<pubDate>Wed, 11 May 2011 07:30:04 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=726</guid>
		<description><![CDATA[Always nice to have friends which notice something like this:

And send it with this message:
Sooo lonely, i am so lonely :-)
Thanks Christoph ^_^ and FU Facebook
]]></description>
			<content:encoded><![CDATA[<p>Always nice to have friends which notice something like this:</p>
<p><a href="http://ingol.nl/blog/wp-content/uploads/2011/05/PastedGraphic-1.png"><img class="size-full wp-image-728 alignnone" title="PastedGraphic-1" src="http://ingol.nl/blog/wp-content/uploads/2011/05/PastedGraphic-1.png" alt="" width="235" height="64" /></a></p>
<p>And send it with this message:</p>
<blockquote><p>Sooo lonely, i am so lonely :-)</p></blockquote>
<p>Thanks Christoph ^_^ and FU Facebook</p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/05/11/help-me-get-friends/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>League of Legends jQuery-UI Plug-ins Released</title>
		<link>http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/</link>
		<comments>http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/#comments</comments>
		<pubDate>Sun, 01 May 2011 13:07:18 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=701</guid>
		<description><![CDATA[I (finally) found time to spend a couple of nightly coding sessions to create some League of Legends jQuery Plug-ins, it&#8217;s a project that was becoming a never ending story. It is an open source project and uses a lot of cool technology like jQuery and CSS Sprites. With it you can create all the  [...]]]></description>
			<content:encoded><![CDATA[
<a href='http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/lol-plugins-builder-2/' title='lol-plugins-builder'><img width="150" height="150" src="http://ingol.nl/blog/wp-content/uploads/2011/05/lol-plugins-builder-150x150.png" class="attachment-thumbnail" alt="lol-plugins-builder" title="lol-plugins-builder" /></a>
<a href='http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/lol-plugins-items-2/' title='lol-plugins-items'><img width="150" height="150" src="http://ingol.nl/blog/wp-content/uploads/2011/05/lol-plugins-items-150x150.png" class="attachment-thumbnail" alt="lol-plugins-items" title="lol-plugins-items" /></a>
<a href='http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/lol-plugins-masteries-2/' title='lol-plugins-masteries'><img width="150" height="150" src="http://ingol.nl/blog/wp-content/uploads/2011/05/lol-plugins-masteries-150x150.png" class="attachment-thumbnail" alt="lol-plugins-masteries" title="lol-plugins-masteries" /></a>
<a href='http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/lol-plugins-runes-2/' title='lol-plugins-runes'><img width="150" height="150" src="http://ingol.nl/blog/wp-content/uploads/2011/05/lol-plugins-runes-150x150.png" class="attachment-thumbnail" alt="lol-plugins-runes" title="lol-plugins-runes" /></a>

<p>I (finally) found time to spend a couple of nightly coding sessions to create some League of Legends jQuery Plug-ins, it&#8217;s a project that was becoming a <a href="http://open.spotify.com/track/79yPlcjbwRebGO32kz8Bkv">never ending story</a>. It is an open source project and uses a lot of cool technology like <a href="http://jquery.com/">jQuery</a> and <a href="http://www.alistapart.com/articles/sprites">CSS Sprites</a>. With it you can create all the champion builds/pages you desire. I already had an awesome code contribution and I&#8217;m hoping for more  community feedback.</p>
<p>Enjoy!</p>
<h2><a href="http://www.ingol.nl/projects/lolplugins/" target="_blank">FULL DEMO</a></h2>
<p>More info and demo&#8217;s at <a href="http://ingol.nl/blog/jquery-league-of-legends-plugins/">http://ingol.nl/blog/jquery-league-of-legends-plugins/</a></p>
<p><strong>League of Legends Forum Posts</strong></p>
<p><a href="http://eu.leagueoflegends.com/board/showthread.php?p=2045061#post2045061">http://eu.leagueoflegends.com/board/showthread.php?p=2045061#post2045061</a><br />
<a href="http://www.leagueoflegends.com/board/showthread.php?t=705751">http://www.leagueoflegends.com/board/showthread.php?t=705751</a></p>
<p><strong>More to come &#8230;</strong></p>
<p>- League of Legends Champions Plug-in</p>
<p>- Additional features on the current plug-ins to make them more awesome</p>
<p>- Back-end code to create / host your own champion build tool and exchange builds</p>
<p><strong>Final Words</strong></p>
<p>These features will probably not come early because we&#8217;re expecting another child soon, maybe with community support we could speed things up greatly, join me at my <a href="http://bitbucket.org/orlissenberg/league-of-legends-jquery-plugins/overview">BitBucket</a> project. If you happen to be Dutch/Belgian and would like to join a LoL Community, take a look at <a href="http://cowclan.nl">CowClan</a></p>
<p>Donations will be accepted to buy gifts for the baby / kids ;-)<br />

<!-- Begin PayPal Donations by http://wpstorm.net/ -->
<form action="https://www.paypal.com/cgi-bin/webscr" method="post"><div class="paypal-donations"><input type="hidden" name="cmd" value="_donations" /><input type="hidden" name="business" value="MP2XU29CSW6HA" /><input type="hidden" name="return" value="http://blog.ingol.nl" /><input type="hidden" name="item_name" value="Thanks for all the fish ( / free code )" /><input type="hidden" name="currency_code" value="EUR" /><input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" name="submit" alt="PayPal - The safer, easier way to pay online." /><img alt="" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" /></div></form>
<!-- End PayPal Donations -->
</p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/05/01/league-of-legends-jquery-ui-plug-ins-released/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Spotted my son Joris doing his &#8220;Nom Nom Nom Nom&#8221; :)</title>
		<link>http://ingol.nl/blog/2011/04/04/spotted-my-son-joris-doing-his-nom-nom-nom-nom/</link>
		<comments>http://ingol.nl/blog/2011/04/04/spotted-my-son-joris-doing-his-nom-nom-nom-nom/#comments</comments>
		<pubDate>Mon, 04 Apr 2011 12:07:06 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=676</guid>
		<description><![CDATA[
The one with the cool Spider-man t-shirt (blue), so proud! We also bought an enormous amount of Lego last weekend, finally a good excuse to spend lot of cash on toys again. For the non-geeks: &#8220;Nom Nom Nom&#8221;. What we bought:
- http://starwars.lego.com/en-us/Products/7868.aspx#7913 Thanks to m [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="https://picasaweb.google.com/lh/photo/u21gMRxwZO5GPfwXwhyeD__PZtBPB_NCLQJ-GmKvtPo?feat=directlink"><img class="aligncenter" style="border: 1px solid black; margin-top: 8px; margin-bottom: 8px;" title="JorisNomNomNom" src="https://lh5.googleusercontent.com/_k1lmMufch6s/TZmzSe0WDTI/AAAAAAAAHB0/yZnqEJTdBAw/s800/IMG_0072.JPG" alt="" width="400" height="300" /></a></p>
<p>The one with the cool Spider-man t-shirt (blue), so proud! We also bought an enormous amount of Lego last weekend, finally a good excuse to spend lot of cash on toys again. For the non-geeks: <a href="http://www.urbandictionary.com/define.php?term=nom%20nom%20nom">&#8220;Nom Nom Nom&#8221;</a>. What we bought:<br />
- <a href="http://starwars.lego.com/en-us/Products/7868.aspx#7913">http://starwars.lego.com/en-us/Products/7868.aspx#7913</a> Thanks to my nephew for making him enthusiastic about Star Wars Lego</p>
<p>- <a href="http://herofactory.lego.com/en-us/Products/Default.aspx#2063">http://herofactory.lego.com/en-us/Products/Default.aspx#2063</a> and <a href="http://herofactory.lego.com/en-us/Products/Default.aspx#2142">http://herofactory.lego.com/en-us/Products/Default.aspx#2142</a> which can be combined to create: <a href="http://herofactory.lego.com/en-us/BuildingInstructions/2063-2142/combi1.aspx">http://herofactory.lego.com/en-us/BuildingInstructions/2063-2142/combi1.aspx</a> (okay, I had to buy both of course, otherwise we&#8217;d only have half of the puzzle and I wouldn&#8217;t be able to sleep at night)</p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/04/04/spotted-my-son-joris-doing-his-nom-nom-nom-nom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testing the Euro in Oracle with Zend_Db &#8211; PHP, Character Encoding Mayhem.</title>
		<link>http://ingol.nl/blog/2011/03/23/testing-the-euro-in-oracle-with-zend_db-php-character-encoding-mayhem/</link>
		<comments>http://ingol.nl/blog/2011/03/23/testing-the-euro-in-oracle-with-zend_db-php-character-encoding-mayhem/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 14:50:41 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=672</guid>
		<description><![CDATA[Just a little code snippet to test inserting and reading special characters (in this case the €) with Oracle and Zend Framework.
References:
ISO/IEC 8859-15
http://en.wikipedia.org/wiki/ISO/IEC_8859-15
Unicode Character &#8216;EURO SIGN&#82 [...]]]></description>
			<content:encoded><![CDATA[<p>Just a little code snippet to test inserting and reading special characters (in this case the €) with Oracle and Zend Framework.</p>
<p>References:<br />
ISO/IEC 8859-15<br />
<a href="http://en.wikipedia.org/wiki/ISO/IEC_8859-15">http://en.wikipedia.org/wiki/ISO/IEC_8859-15</a></p>
<p>Unicode Character &#8216;EURO SIGN&#8217; (U+20AC)<br />
<a href="http://www.fileformat.info/info/unicode/char/20ac/index.htm">http://www.fileformat.info/info/unicode/char/20ac/index.htm</a></p>
<pre class="brush: plain; title: ; notranslate">
CREATE TABLE &quot;EURO_TEST&quot; ( &quot;EURO&quot; VARCHAR2(50 CHAR) )
</pre>
<p>Zend Framework Controller Action &#8230;</p>
<pre class="brush: php; title: ; notranslate">
   /*
    * http://en.wikipedia.org/wiki/ISO/IEC_8859-15
    * EURO = Hex A4 (Dec 164)
    *
    * Unicode Character 'EURO SIGN' (U+20AC)
    * http://www.fileformat.info/info/unicode/char/20ac/index.htm
    * EURO = UTF-8(hex) 0xE2 0x82 0xAC (e282ac)
    *
    * Oracle Adapter Configuration:
      resources.db.adapter = &quot;Oracle&quot;
      resources.db.params.host = &quot;&quot;
      resources.db.params.username = &quot;&quot;
      resources.db.params.password = &quot;&quot;
      resources.db.params.charset = &quot;AL32UTF8&quot; !!IMPORTANT!!
      resources.db.params.dbname = &quot;...&quot;
      resources.db.isDefaultTableAdapter = true

    * Get Oracle NLS Settings:
    * SELECT * FROM NLS_DATABASE_PARAMETERS;
    */
    public function euroAction ()
    {
        $this-&gt;_helper-&gt;viewRenderer-&gt;setNoRender(true);

        $db = Bootstrap::getDatabase();
        // cleanup a previous test
        $db-&gt;delete('EURO_TEST');
        $db-&gt;insert('EURO_TEST',array('EURO'=&gt;'€'));

        echo '&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01//EN&quot; &quot;http://www.w3.org/TR/html4/strict.dtd&quot;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;Euro Test&lt;/title&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot; /&gt;&lt;/head&gt;&lt;body&gt;';

        /* @var $db Zend_Db_Adapter_Oracle */
        $result = $db-&gt;fetchAll(&quot;select euro from euro_test&quot;);
        // Shows the €
        foreach ($result as $r) {
            echo htmlentities($r['EURO'], ENT_QUOTES, 'UTF-8'); // !!IMPORTANT!!
            echo '&lt;br/&gt;';
        }

        // http://www.techonthenet.com/oracle/functions/dump.php
        $result = $db-&gt;fetchAll(&quot;select dump(euro, 1016) as eurocode from euro_test&quot;);
        // Should show something like Typ=1 Len=3 CharacterSet=AL32UTF8: e2,82,ac.
        foreach ($result as $r) {
            echo $r['EUROCODE'];
            echo '&lt;br/&gt;';
        }

        echo '€';
        echo '&lt;/body&gt;&lt;/head&gt;&lt;/html&gt;';
    }
</pre>
<p>See also:<br />
<a href="http://www.php.net/manual/en/refs.international.php" title="Human Language and Character Encoding Support" target="_blank"></a><br />
<a href="http://www.php.net/manual/en/mbstring.configuration.php" title="Mbstring Configuration Options" target="_blank"></a></p>
<p>A solution to set various PHP UTF-8 encoding settings for PHP through a .htaccess file can be found in this stack overflow post:<br />
<a href="http://stackoverflow.com/questions/6987929/preparing-php-application-to-use-with-utf-8" title="Preparing PHP application to use with UTF-8" target="_blank"></a></p>
<p>.htaccess settings for UTF-8 encoding support example:</p>
<pre class="brush: plain; title: ; notranslate">
########################################
# Locale settings
########################################

# See: http://php.net/manual/en/timezones.php
php_value date.timezone &quot;Europe/Amsterdam&quot;

SetEnv   LC_ALL  nl_NL.UTF-8

########################################
# Set up UTF-8 encoding
########################################

AddDefaultCharset UTF-8
AddCharset UTF-8 .php

php_value default_charset &quot;UTF-8&quot;

php_value iconv.input_encoding &quot;UTF-8&quot;
php_value iconv.internal_encoding &quot;UTF-8&quot;
php_value iconv.output_encoding &quot;UTF-8&quot;

php_value mbstring.internal_encoding UTF-8
php_value mbstring.http_output UTF-8
php_value mbstring.encoding_translation On
php_value mbstring.func_overload 6

# See also php functions:
# mysql_set_charset
# mysql_client_encoding

# database settings
#CREATE DATABASE db_name
#   CHARACTER SET utf8
#   DEFAULT CHARACTER SET utf8
#   COLLATE utf8_general_ci
#   DEFAULT COLLATE utf8_general_ci
#   ;
#
#ALTER DATABASE db_name
#   CHARACTER SET utf8
#   DEFAULT CHARACTER SET utf8
#   COLLATE utf8_general_ci
#   DEFAULT COLLATE utf8_general_ci
#   ;

#ALTER TABLE tbl_name
#   DEFAULT CHARACTER SET utf8
#   COLLATE utf8_general_ci
#   ;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/03/23/testing-the-euro-in-oracle-with-zend_db-php-character-encoding-mayhem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firefox 4 Gets a Seal of Approval XD</title>
		<link>http://ingol.nl/blog/2011/03/23/firefox-4-gets-a-seal-of-approval-xd/</link>
		<comments>http://ingol.nl/blog/2011/03/23/firefox-4-gets-a-seal-of-approval-xd/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 07:41:29 +0000</pubDate>
		<dc:creator>Onno</dc:creator>
				<category><![CDATA[Categorized]]></category>

		<guid isPermaLink="false">http://ingol.nl/blog/?p=667</guid>
		<description><![CDATA[ Now lets hope the extensions catch up with this version. Still waiting for Selenium, Pencil, Delicious, etc.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://ingol.nl/blog/wp-content/uploads/2011/03/seal-of-approval.jpg"><img class="alignleft size-medium wp-image-668" style="border: solid 1px black; margin: 4px;" title="Seal of Approval" src="http://ingol.nl/blog/wp-content/uploads/2011/03/seal-of-approval-300x199.jpg" alt="" width="300" height="199" /></a> Now lets hope the extensions catch up with this version. Still waiting for Selenium, Pencil, Delicious, etc.</p>
]]></content:encoded>
			<wfw:commentRss>http://ingol.nl/blog/2011/03/23/firefox-4-gets-a-seal-of-approval-xd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

