<?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>Steven van der Peijl</title>
	<atom:link href="http://www.stevenvanderpeijl.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.stevenvanderpeijl.com</link>
	<description>(mobile) Technology knows no boundaries</description>
	<lastBuildDate>Tue, 10 Jan 2012 15:18:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Inno Setup &#8211; creating an installer as downloader</title>
		<link>http://www.stevenvanderpeijl.com/2012/work/inno-setup-creating-an-installer-as-downloader/107?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=inno-setup-creating-an-installer-as-downloader</link>
		<comments>http://www.stevenvanderpeijl.com/2012/work/inno-setup-creating-an-installer-as-downloader/107#comments</comments>
		<pubDate>Sat, 07 Jan 2012 20:04:55 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=107</guid>
		<description><![CDATA[For the Simlock Remote Server software I needed to create a good installer that downloaded files based on installer components selected by the user and then installed the downloaded files. There are some commercial solutions for creating installers however there is also a very good and free one called &#8216;Inno Setup&#8216;.
I was completely new to [...]]]></description>
			<content:encoded><![CDATA[<p>For the Simlock Remote Server software I needed to create a good installer that downloaded files based on installer components selected by the user and then installed the downloaded files. There are some commercial solutions for creating installers however there is also a very good and free one called &#8216;<a title="Inno Setup website" href="http://www.jrsoftware.org/isinfo.php" target="_blank">Inno Setup</a>&#8216;.</p>
<p>I was completely new to this install creator so I needed to do a lot of research to get it all working especially because documentation for the downloader addons isn&#8217;t very extensive / non existing. The basics of Inno Setup are not very difficult and it is well documented. Just check out the examples that come with Inno Setup and you&#8217;ll be on your way. As for the downloader addons, there are 2:</p>
<p>1. <a href="http://sherlocksoftware.org/page.php?id=50" target="_blank">InnoTools downloader </a>- This one is also linked from the official Inno Setup website. It is a good installer with some examples and some documentation on how to use it and good features. However there is no support what-so-ever for this plugin if you run into problems.</p>
<p>2. <a href="http://sourceforge.net/projects/istool/" target="_blank">IsTools downloader </a>- is part of a GUI for InnoSetup, which is good enough for simple use but I prefer just to work with the code I can see and not some GUI. The downloader part of this package does not come with any examples nor documentation, and judging from their Sourceforge page if you have questions you can wait until&#8230;&#8230; well lets just say a long time..</p>
<p>I first tried to do what I wanted with InnoTools and all looked good and worked smooth (so I toughed). InnoTools has better features for working with different languages and offers an download mirror option in case the normal download link fails and it is just in general a bit more user friendly to use. However it seems to contain a very weird bug. I needed to download 2 files (15mb and 23mb), on most computers both files downloaded without problems and with good speed. However on 1 computer I have it just refused to download the second 23mb file. It always stopped at 19.xx mb and gave an error (error HTTP code 200; which is not an error!). I tried EVERYTHING to fix it (changing download servers, removing language options, stripping all options etc) and it just did not work. I tried on 3 computers which I have here and for 2 it always worked perfect and third had problems (Win 7 EN, Win XP en, Win XP Dutch; with problem). Then I started hearing from several customers that they had some problem as on my WinXP Dutch machine. So it wasn&#8217;t just that one computer any more..</p>
<p>Like I said I tried everything, including contacting the programmer of InnoTools, but I did not get any reply there. So in the end the only solution was using the ISTool downloader dll and that one did work. Took a bit more effort to get that one working due to lack of examples but all seems to be good now.</p>
<p>In the end I still don&#8217;t know the reason but I made like 20 installers and tried them all on the computer with problems and nothing worked, it always failed at 19.xx mb of the download. The only thing in common which I can see so far is; the problem occurs with non English Windows installations for so far all the customers I talked to with this problem had non English Windows Installation. Oh in case you were thinking, I of course also just downloaded the file directly from that problem computer to see if there was anything wrong with the file, which was not the case.</p>
<p>Code for the downloading part with ISTools (you need isxdl.dll, isxdl.iss, smallimg.bmp in same dir as your installer iss script) using components to select what to download:</p>
<address style="padding-left: 30px;">[Types]<br />
Name: &#8220;full&#8221;; Description: &#8220;Full installation&#8221;<br />
Name: &#8220;compact&#8221;; Description: &#8220;Compact installation&#8221;<br />
Name: &#8220;custom&#8221;; Description: &#8220;Custom installation&#8221;; Flags: iscustom[Components]<br />
Name: &#8220;someinstaller&#8221;; Description: &#8220;Soft description&#8221;; Types: full compact; ExtraDiskSpaceRequired: &lt;sizeinbytes&gt;;<br />
Name: &#8220;somedrivers&#8221;; Description: &#8220;drivers&#8221;; Types: full; ExtraDiskSpaceRequired: &lt;sizeinbytes&gt;[Files]<br />
Source: &#8220;smallimg.bmp&#8221;; Flags: dontcopy;</p>
<p>function NextButtonClick(CurPageID: Integer): Boolean;<br />
var<br />
ResultCode: Integer;<br />
hWnd: Integer;<br />
FileName: String;<br />
begin<br />
case CurPageID of<br />
wpSelectComponents:<br />
begin<br />
hWnd := StrToInt(ExpandConstant(&#8216;{wizardhwnd}&#8217;));<br />
isxdl_SetOption(&#8216;label&#8217;, &#8216;Downloading  files&#8217;);<br />
isxdl_SetOption(&#8216;description&#8217;, &#8216;Setup needs to install some components. Please wait while Setup is downloading the files to your computer.&#8217;);<br />
try<br />
FileName := ExpandConstant(&#8216;{tmp}\smallimg.bmp&#8217;);<br />
if not FileExists(FileName) then ExtractTemporaryFile(ExtractFileName(FileName));<br />
isxdl_SetOption(&#8216;smallwizardimage&#8217;, FileName);<br />
except<br />
end;        //downloaddd<br />
if IsComponentSelected(&#8216;srssoftware&#8217;) then begin<br />
isxdl_AddFile(&#8216;http://www.urlto.com/file.exe&#8217;, expandconstant(&#8216;{tmp}\file.exe&#8217;));<br />
end;if IsComponentSelected(&#8216;samsungdrivers&#8217;) then begin<br />
isxdl_AddFile(&#8216;http://www.urlto.com/driver.exe&#8217;, expandconstant(&#8216;{tmp}\driver.exe&#8217;));<br />
end;//Start the download after the &#8220;Ready to install&#8221; screen is shown<br />
if isxdl_DownloadFiles(hWnd) = 0 then begin<br />
MsgBox(&#8216;Error downloading files&#8217;, mbCriticalError, MB_OK);<br />
exit;<br />
end<br />
end;</p>
<p>wpReady:<br />
begin<br />
if IsComponentSelected(&#8216;someinstaller&#8217;) then begin<br />
if not Exec(ExpandConstant(&#8216;{tmp}\file.exe&#8217;), ExpandConstant(&#8216;/DIR=&#8221;{app}&#8221; /SILENT /TASKS=&#8221;modifypath&#8221; /NORESTART /NOCANCEL&#8217;), &#8221;, SW_SHOW, ewWaitUntilTerminated, ResultCode) then begin<br />
MsgBox(&#8216;Error installing software, please run the installer again&#8217;, mbCriticalError, MB_OK);<br />
result:=false;<br />
end;<br />
end;<br />
if IsComponentSelected(&#8216;somedrivers&#8217;) then begin<br />
if not Exec(ExpandConstant(&#8216;{tmp}\driver.exe&#8217;), &#8221;, &#8221;, SW_SHOW, ewWaitUntilTerminated, ResultCode) then begin<br />
MsgBox(&#8216;The installer could not install the drivers. Please try again&#8217;, mbError, MB_OK);<br />
end;<br />
end;<br />
end;<br />
end;<br />
Result := true;<br />
end;</p>
</address>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/work/other" title="Other" rel="tag">Other</a>, <a href="http://www.stevenvanderpeijl.com/category/work" title="Work" rel="tag">Work</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2012/work/inno-setup-creating-an-installer-as-downloader/107/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AwayDaddy debacle</title>
		<link>http://www.stevenvanderpeijl.com/2012/work/hosting-domains/awaydaddy-debacle/102?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=awaydaddy-debacle</link>
		<comments>http://www.stevenvanderpeijl.com/2012/work/hosting-domains/awaydaddy-debacle/102#comments</comments>
		<pubDate>Tue, 03 Jan 2012 15:55:21 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[Hosting & Domains]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=102</guid>
		<description><![CDATA[In case you haven&#8217;t heard this yet (I was a bit late also) in the US of ridiculous they are trying to push a new act called &#8216;SOPA&#8217;, basically this means no more privacy, no more right for all internet users. Many many people and also companies are against it and support petitions and actions [...]]]></description>
			<content:encoded><![CDATA[<p>In case you haven&#8217;t heard this yet (I was a bit late also) in the US of ridiculous they are trying to push a new act called &#8216;SOPA&#8217;, basically this means no more privacy, no more right for all internet users. Many many people and also companies are against it and support petitions and actions to stop this act being pushed through. However there is also a <a title="Companies supporting SOPA" href="http://theoriesofconspiracy.com/2011/11/list-of-major-companies-supporting-sopa.htm" target="_blank">list of companies</a> that support this ridiculous idea. In my opinion this list should be everybody his/her bible for companies to avoid buying from / doing business with. Of course this is not super easy as there are some very big names in that list (including all big movie / music companies).</p>
<p>However there are also some surprises in that list such as <strong>GoDaddy</strong>. A big domain registrar and hosting company. They are basically saying our customers have no rights and whenever any company listed on that list and USA government asks for it we will just take your domains / websites and give &#8216;em to them. OVER MY DEAD BODY, I say.</p>
<p>Then there is also a older issue which I apparently missed at the time, that mister CEO of GoDaddy Bob something thinks it is a <span style="text-decoration: underline;">noble thing</span> (his words) to go to Africa and <strong>kill some wild elephants</strong> for the fun of it. Well F YOU GoSOPA KillElephants company! <strong>Me and my 38 domains are moving away, as fast as we can!</strong></p>
<p>Where to go?<br />After quite some research, contacting various others I decided to move to <a title="Internetbs" href="http://www.internetbs.net" target="_blank">Internet.bs</a>. First of all they don&#8217;t like killing elephants either (I asked them specifically <img src='http://www.stevenvanderpeijl.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) and they are against SOPA like any other smart people / companies. And also very important; they are WAY cheaper then Godaddy and offer free life-time domain privacy (also saving me much more money).</p>
<p>Some other alternatives I looked at:</p>
<ul>
<li>Namecheap.com</li>
<li>Name.com (a close second for me, very possible I will move some other domain extensions that internet.bs not yet supports here)</li>
<li>Ghandi.net (heard good things but they are REALLY expensive)</li>
<li>onlydomains.com (failed to respond)</li>
</ul>
<p>And a bunch more but based on their websites / prices / offer I didn&#8217;t bother contacting them.</p>
<p>So I&#8217;m now in the process of transferring the domains, of course Godaddy with their terrible website is making it hard and they already rejected some transfers because of the stupid domainsbyproxy (even though I received an EMAIL from domainsbyproxy where I specifically approved the transfer) which I then had to figure out all logins for that and then first completely remove the privacy (done and done).</p>
<p>By now (because I&#8217;m hardly the only person with this anti Godaddy opinion) hundreds of thousands of domains have been moved away from GoDaddy and they &#8216;changed their viewpoint&#8217;. Now say they are against SOPA. Well good for them but that still leaves the elephant killing, the general dumb ass CEO and just the simple fact <span style="text-decoration: underline;">I don&#8217;t believe a WORD they say any more.</span></p>
<p>I HIGHLY recommend EVERYBODY to move his/her/their domains away from GoDaddy! MANY other registrars are offering nice discounts to move away from GoDaddy, so act now! Just don&#8217;t be blinded by transfer prices only. The most important price to look at is RENEWAL prices for your domains.</p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/work/hosting-domains" title="Hosting &amp; Domains" rel="tag">Hosting &amp; Domains</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2012/work/hosting-domains/awaydaddy-debacle/102/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mysql 2 Search PHP class made public</title>
		<link>http://www.stevenvanderpeijl.com/2011/work/mysql-2-search-class/96?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql-2-search-class</link>
		<comments>http://www.stevenvanderpeijl.com/2011/work/mysql-2-search-class/96#comments</comments>
		<pubDate>Mon, 14 Nov 2011 06:55:06 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[full text search]]></category>
		<category><![CDATA[innodb]]></category>
		<category><![CDATA[innovation award]]></category>
		<category><![CDATA[mysql database]]></category>
		<category><![CDATA[php class]]></category>
		<category><![CDATA[search class]]></category>
		<category><![CDATA[sphinx]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=96</guid>
		<description><![CDATA[I decided to release a search class which I use for several of my website to the public to use. The collection of 2 classes use 3 techniques to search a mysql database which are:

Full text search (for MyISAM or InnoDB with Mysql version 5.6)
Like search (simplest method, not recommended)
Sphinx search (needs Sphinx installation, recommended)

The [...]]]></description>
			<content:encoded><![CDATA[<p>I decided to release a <a href="http://www.stevenvanderpeijl.com/tag/search-class" class="st_tag internal_tag" rel="tag" title="Posts tagged with search class">search class</a> which I use for several of my website to the public to use. The collection of 2 classes use 3 techniques to search a <a href="http://www.stevenvanderpeijl.com/tag/mysql-database" class="st_tag internal_tag" rel="tag" title="Posts tagged with mysql database">mysql database</a> which are:</p>
<ol>
<li><a href="http://www.stevenvanderpeijl.com/tag/full-text-search" class="st_tag internal_tag" rel="tag" title="Posts tagged with full text search">Full text search</a> (for MyISAM or <a href="http://www.stevenvanderpeijl.com/tag/innodb" class="st_tag internal_tag" rel="tag" title="Posts tagged with innodb">InnoDB</a> with Mysql version 5.6)</li>
<li>Like search (simplest method, not recommended)</li>
<li><a href="http://www.stevenvanderpeijl.com/tag/sphinx" class="st_tag internal_tag" rel="tag" title="Posts tagged with sphinx">Sphinx</a> search (needs <a href="http://www.stevenvanderpeijl.com/tag/sphinx" class="st_tag internal_tag" rel="tag" title="Posts tagged with sphinx">Sphinx</a> installation, recommended)</li>
</ol>
<p>The sphinxapi.php is part of the sphinx installation for ease-of-use I&#8217;ve included the file, this <a href="http://www.stevenvanderpeijl.com/tag/api" class="st_tag internal_tag" rel="tag" title="Posts tagged with api">api</a> is NOT made by me.</p>
<p>Read more and download the files at: <a title="Mysql2Search PHP class" href="http://www.stevenvanderpeijl.com/work/mysql2search">http://www.stevenvanderpeijl.com/work/mysql2search</a></p>
<p>Update: I received a cool <a href="http://www.stevenvanderpeijl.com/tag/innovation-award" class="st_tag internal_tag" rel="tag" title="Posts tagged with innovation award">Innovation Award</a> for this class on <a title="Mysql2Search PHP class on phpclasses.org" href="www.phpclasses.org/package/7221-PHP-Search-for-content-on-MySQL-or-Sphinx.html">phpclasses.org</a> thanks guys <img src='http://www.stevenvanderpeijl.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

	Tags: <a href="http://www.stevenvanderpeijl.com/tag/api" title="api" rel="tag">api</a>, <a href="http://www.stevenvanderpeijl.com/tag/full-text-search" title="full text search" rel="tag">full text search</a>, <a href="http://www.stevenvanderpeijl.com/tag/innodb" title="innodb" rel="tag">innodb</a>, <a href="http://www.stevenvanderpeijl.com/tag/innovation-award" title="innovation award" rel="tag">innovation award</a>, <a href="http://www.stevenvanderpeijl.com/tag/mysql-database" title="mysql database" rel="tag">mysql database</a>, <a href="http://www.stevenvanderpeijl.com/category/work/php" title="PHP" rel="tag">PHP</a>, <a href="http://www.stevenvanderpeijl.com/tag/php-class" title="php class" rel="tag">php class</a>, <a href="http://www.stevenvanderpeijl.com/tag/search-class" title="search class" rel="tag">search class</a>, <a href="http://www.stevenvanderpeijl.com/tag/sphinx" title="sphinx" rel="tag">sphinx</a>, <a href="http://www.stevenvanderpeijl.com/category/work" title="Work" rel="tag">Work</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/work/mysql-2-search-class/96/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Paypal payment received emails problem</title>
		<link>http://www.stevenvanderpeijl.com/2011/general/paypal-payment-received-emails-problem/83?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=paypal-payment-received-emails-problem</link>
		<comments>http://www.stevenvanderpeijl.com/2011/general/paypal-payment-received-emails-problem/83#comments</comments>
		<pubDate>Wed, 12 Oct 2011 23:48:48 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=83</guid>
		<description><![CDATA[So since a few days I barely can&#8217;t open any Paypal payment received emails  any more because my Outlook 2007 stops responding and I have to wait like a couple minutes for it to clear. I started looking for a solution tried a lot of fixes I found using google but all did not work. [...]]]></description>
			<content:encoded><![CDATA[<p>So since a few days I barely can&#8217;t open any Paypal payment received emails  any more because my Outlook 2007 stops responding and I have to wait like a couple minutes for it to clear. I started looking for a solution tried a lot of fixes I found using google but all did not work. Then I noticed that the problem was ONLY with Paypal emails. So I checked the source of the Paypal emails and noticed this at the bottom:</p>
<p>&nbsp;</p>
<p style="padding-left: 30px;"><em>&lt;span&gt;&lt;span style=&#8217;font-size:8.5pt;font-family:&#8221;Arial&#8221;,&#8221;sans-serif&#8221;; mso-fareast-font-family:&#8221;Times New Roman&#8221;;color:#333333&#8242;&gt;E-mailreferentie PayPal PP341&lt;/span&gt;&lt;/span&gt;&lt;span style=&#8217;font-size:9.0pt;font-family:&#8221;Arial&#8221;,&#8221;sans-serif&#8221;;<br />
mso-fareast-font-family:&#8221;Times New Roman&#8221;&#8216;&gt;&lt;img border=0 width=1 height=1  id=&#8221;_x0000_i1028&#8243;<br />
src=&#8221;//102.112.2O7.net/b/ss/paypalglobal/1/G.4&#8211;NS/123456?pageName=system_email_PP341&#8243;&gt;&lt;o:p&gt;&lt;/o:p&gt;<br />
&lt;/span&gt;&lt;/p&gt;</em></p>
<p>As you can see the link is wrong. It is some link to some dirty omniture tracking shit which I really do not appreciate Paypal using however next to that they made a dumb mistake and now everytime I try to open my Paypal email I have to wait several minutes for it to show up!</p>
<p>&nbsp;</p>
<p>I&#8217;ve contact Paypal that I want this part of the code removed (which they probably won&#8217;t do) however at least I hope they fix it fast as this is annoying as hell. With all the tips &amp; tricks I haven&#8217;t found a way to get rid of the delay, I even tried changing my windows hosts file blocking the 2o7.net domain (note that the o in 2o7 is an O as in the letter).</p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/general" title="General" rel="tag">General</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/general/paypal-payment-received-emails-problem/83/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: Mysql to Excel and Excel to Mysql</title>
		<link>http://www.stevenvanderpeijl.com/2011/work/php-mysql-to-excel-and-excel-to-mysql/77?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=php-mysql-to-excel-and-excel-to-mysql</link>
		<comments>http://www.stevenvanderpeijl.com/2011/work/php-mysql-to-excel-and-excel-to-mysql/77#comments</comments>
		<pubDate>Wed, 05 Oct 2011 09:41:03 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[Mysql]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=77</guid>
		<description><![CDATA[For the back-end of all my websites I use a self made CMS  / eCommerce system (called ICS), in this system I have build a module for website translations using Mysql for all site content. With that I created a Excel import and export function to be able to send all the text files to [...]]]></description>
			<content:encoded><![CDATA[<p>For the back-end of all my websites I use a self made CMS  / eCommerce system (called ICS), in this system I have build a module for website translations using Mysql for all site content. With that I created a Excel import and export function to be able to send all the text files to independent translators. However I was always limited to CSV format which at times caused some problems with the content.</p>
<p>I&#8217;ve been searching for a good solution for using real Excel (xls, xlsx) files for quite some time and now I&#8217;ve finally found a really good one! I already knew PEAR has such a package however I didn&#8217;t feel like using PEAR for my system. I&#8217;ve been testing the system and it is awesome it not only is able to write and read xlsx (office 2007) xls (office 2005) files but also pdf and a lot more.</p>
<p>Have a look at <strong><span style="color: #ff0000;"><a title="PHPexcel" href="http://phpexcel.codeplex.com/" target="_blank"><span style="color: #ff0000;">phpexcel</span></a>.</span></strong><br />
It is also very easy to work with this package <img src='http://www.stevenvanderpeijl.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/work/mysql" title="Mysql" rel="tag">Mysql</a>, <a href="http://www.stevenvanderpeijl.com/category/work/php" title="PHP" rel="tag">PHP</a>, <a href="http://www.stevenvanderpeijl.com/category/work" title="Work" rel="tag">Work</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/work/php-mysql-to-excel-and-excel-to-mysql/77/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[PHP] Recursive array search with multiple results</title>
		<link>http://www.stevenvanderpeijl.com/2011/work/php-recursive-array-search-with-multi-results/70?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=php-recursive-array-search-with-multi-results</link>
		<comments>http://www.stevenvanderpeijl.com/2011/work/php-recursive-array-search-with-multi-results/70#comments</comments>
		<pubDate>Thu, 25 Aug 2011 09:17:03 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=70</guid>
		<description><![CDATA[Ok, so for UnlockSamsungOnline.com I needed a function to search in a multidimensional array with an unknown dept for values and returning the base keys. So first I started at php.net and I searched google. It was easy to find such a function when it just presented one result or just a &#8216;yes, the value [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, so for<span style="color: #ff0000;"> <a title="Simlock Remote Server" href="http://www.unlocksamsungonline.com"><span style="color: #ff0000;">UnlockSamsungOnline.com</span></a></span> I needed a function to search in a multidimensional array with an unknown dept for values and returning the base keys. So first I started at php.net and I searched google. It was easy to find such a function when it just presented one result or just a &#8216;yes, the value is in your array&#8217; result, however I needed all the keys from the array in which a particular string was found in any of its sub-arrays.</p>
<p>Well I came to the conclusion it was either just very hard to find or not yet out there published in the wild, so I took the smallest and simplest function I could find which just provided me with the first key when the needle was found and modified it so it does exactly what I want. Here it is I hope it can help you out at well:</p>
<pre style="padding-left: 30px;">function recursive_array_search($needle,$haystack,$subloop = false) {
    if($subloop === false) $resarr = array();
    foreach($haystack as $key=&gt;$value) {
        $current_key=$key;
        if(is_string($needle)) $needle = trim(strtolower($needle));
        if(is_string($value)) $value = trim(strtolower($value));
        if($needle===$value OR (is_array($value) &amp;&amp; recursive_array_search($needle,$value,true) === true)) {
            $resarr[] = $current_key;
            if($subloop === true) return true;
        }
    }
    return $resarr;
}</pre>
<p>The function will return an array with all keys in which your needle is found.</p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/work/php" title="PHP" rel="tag">PHP</a>, <a href="http://www.stevenvanderpeijl.com/category/work" title="Work" rel="tag">Work</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/work/php-recursive-array-search-with-multi-results/70/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google +1 good for SEO good for customers</title>
		<link>http://www.stevenvanderpeijl.com/2011/work/google-1-good-for-seo-good-for-customers/62?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=google-1-good-for-seo-good-for-customers</link>
		<comments>http://www.stevenvanderpeijl.com/2011/work/google-1-good-for-seo-good-for-customers/62#comments</comments>
		<pubDate>Tue, 02 Aug 2011 07:39:11 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[AJAX / Javascript]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=62</guid>
		<description><![CDATA[For one of my websites I just added the Google +1 button. As you probably already know it is very similar to the Facebook &#8216;Like&#8217; or &#8216;Recommend&#8217; button and it can help your SEO for organic search and of course also the social aspect of people vouching for your website helps you get more visitors.

So [...]]]></description>
			<content:encoded><![CDATA[<p>For one of my websites I just added the Google +1 button. As you probably already know it is very similar to the Facebook &#8216;Like&#8217; or &#8216;Recommend&#8217; button and it can help your SEO for organic search and of course also the social aspect of people vouching for your website helps you get more visitors.<br />
<br />
<strong>So how about offering your visitors / customers an incentive to click this button?</strong><br />
According to Google you can offer your visitors exclusive content as reward for pressing the button, you can not offer a service or paid products. Now I feel offering a discount code for clicking the button is not a service neither is it a paid product. So this could be a good opportunity of getting some (SEO) exposure for your website. However you do have to be careful with this as you do not want to get penalized for abusing this option. Knowing Google a little they will do this sooner or later if you are abusing this option.<br />
<br />
<strong>So how can you unlock this &#8216;exclusive&#8217; content for pressing the +1 Google button?</strong><br />
Google provided us with the option for a &#8216;callback&#8217; javascript function thus making it pretty easy. After doing this for the +1 button I also started searching for a similar solution for the Facebook &#8216;Like&#8217; button.<br />
<br />
Put this javascript in the &lt;head&gt; of your website (thanks to Philip_M from codingforums.com for making this js more efficient)<br />
<code>&lt;script type="text/javascript"&gt;<br />
function Toggle(obj) {<br />
var Style = document.getElementById(obj).style;<br />
Style.display = (Style.display == "none") ? "" : "none";<br />
}<br />
&lt;/script&gt;</code><br />
<br />
Place the following code where you want the button and the exclusive content (the button and div can be separated and located anywhere on the site):<br />
<code>&lt;g:plusone size="medium" callback="GToggle"&gt;&lt;/g:plusone&gt; //code for the button<br />
&lt;div id="googleplusdisc" style="display:none"&gt; //div for exclusive content<br />
exclusive content / discount code here<br />
&lt;/div&gt;<br />
&lt;script type="text/javascript"&gt;<br />
function GToggle(plusone) {<br />
if(plusone.state == "on"){<br />
Toggle('googleplusdisc');<br />
}<br />
}<br />
&lt;/script&gt;<br />
&lt;script type="text/javascript"&gt;<br />
(function() {<br />
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;<br />
po.src = 'https://apis.google.com/js/plusone.js';<br />
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);<br />
})();<br />
&lt;/script&gt;</code><br />
<br />
<strong>The code needed for doing the same for the Facebook &#8216;like&#8217; button:</strong><br />
Put this javascript in the &lt;head&gt; of your website (thanks to Philip_M from codingforums.com for making this js more efficient)<br />
<code>&lt;script type="text/javascript"&gt;<br />
function Toggle(obj) {<br />
var Style = document.getElementById(obj).style;<br />
Style.display = (Style.display == "none") ? "" : "none";<br />
}<br />
&lt;/script&gt;</code><br />
<br />
Codes for the buttons (choose one):<br />
<code>&lt;fb:like action="recommend"&gt;&lt;/fb:like&gt;<br />
&lt;fb:like&gt;&lt;/fb:like&gt;</code><br />
<br />
Callback script (place under the button code):<br />
<code>&lt;script&gt;<br />
// this will fire when any of the like widgets are "liked" by the user<br />
FB.Event.subscribe('edge.create', function(href, widget) {<br />
Log.info('DISCOUNT code here'); //this will create a hover FB box with the text 'Discount code here' when user hovers the mouse over the 'Like button'<br />
//or<br />
//  Toggle('fbdisc'); //remove // to activate</code><br />
});<br />
&lt;/script&gt;<br />
<br />
Div for content (only if you want to use the Toggle function in code above:<br />
<code>&lt;div id="fbdisc" style="display:none"&gt; //div for exclusive content<br />
exclusive content / discount code here<br />
&lt;/div&gt;</code></p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/work/ajax-javascript-work" title="AJAX / Javascript" rel="tag">AJAX / Javascript</a>, <a href="http://www.stevenvanderpeijl.com/category/work" title="Work" rel="tag">Work</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/work/google-1-good-for-seo-good-for-customers/62/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Style (path) Constants in phpBB3</title>
		<link>http://www.stevenvanderpeijl.com/2011/general/style-path-constants-in-phpbb3/32?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=style-path-constants-in-phpbb3</link>
		<comments>http://www.stevenvanderpeijl.com/2011/general/style-path-constants-in-phpbb3/32#comments</comments>
		<pubDate>Mon, 06 Jun 2011 05:58:30 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[phpbb3 path constants T_THEME_PATH T_TEMPLATE_PATH]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=32</guid>
		<description><![CDATA[Hey,
I was just searching for couple hours where I could find some constants used in phpBB code. The &#8216;PHPBB_ROOT_PATH&#8217; was pretty easy as that is found in index.php however some others took me bit longer but (in the end) are pretty logical located also. I was searching for constants like &#8216;T_THEME_PATH&#8217;, &#8216;T_TEMPLATE_PATH&#8217; etc. Well for [...]]]></description>
			<content:encoded><![CDATA[<p>Hey,</p>
<p>I was just searching for couple hours where I could find some constants used in phpBB code. The &#8216;PHPBB_ROOT_PATH&#8217; was pretty easy as that is found in index.php however some others took me bit longer but (in the end) are pretty logical located also. I was searching for constants like &#8216;T_THEME_PATH&#8217;, &#8216;T_TEMPLATE_PATH&#8217; etc. Well for all of you that wanna know, you can find them in &#8216;style.php&#8217; (forum root) at line 230. There are also a few other at &#8216;index.php (forum root) at line 148.</p>
<p>Update:  the constants in style.php can ONLY be used in the stylesheets. Constants to be used in HTML templates can be found in &#8216;includes/functions.php&#8217; around lines 4600 <img src='http://www.stevenvanderpeijl.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/general" title="General" rel="tag">General</a>, <a href="http://www.stevenvanderpeijl.com/tag/phpbb3-path-constants-t_theme_path-t_template_path" title="phpbb3 path constants T_THEME_PATH T_TEMPLATE_PATH" rel="tag">phpbb3 path constants T_THEME_PATH T_TEMPLATE_PATH</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/general/style-path-constants-in-phpbb3/32/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpBB3 CompleteBan mod</title>
		<link>http://www.stevenvanderpeijl.com/2011/general/phpbb3-completeban-mod/55?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=phpbb3-completeban-mod</link>
		<comments>http://www.stevenvanderpeijl.com/2011/general/phpbb3-completeban-mod/55#comments</comments>
		<pubDate>Wed, 01 Jun 2011 00:55:12 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=55</guid>
		<description><![CDATA[I just finished my first modification for phpBB3 forum. I wrote this mod for SamsungUniverse.com because it got annoying banning spammers 3 times on their email, IP and username. This small mod will ban a spammer (bot) on all 3 just with one click. It can also delete all user&#8217;s posts and full ban the [...]]]></description>
			<content:encoded><![CDATA[<p>I just finished my first modification for phpBB3 forum. I wrote this mod for <a title="Samsung Universe" href="http://www.samsunguniverse.com">SamsungUniverse.com</a> because it got annoying banning spammers 3 times on their email, IP and username. This small mod will ban a spammer (bot) on all 3 just with one click. It can also delete all user&#8217;s posts and full ban the spammer with one click.</p>
<p>The mod has now been posted to the MOD developer forums on the phpBB3 community for feedback:<br />
<a href="http://www.phpbb.com/community/viewtopic.php?f=70&amp;t=2131082">http://www.phpbb.com/community/viewtopic.php?f=70&amp;t=2131082</a></p>

	Tags: <a href="http://www.stevenvanderpeijl.com/category/general" title="General" rel="tag">General</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/general/phpbb3-completeban-mod/55/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Android Java course</title>
		<link>http://www.stevenvanderpeijl.com/2011/eduction/adroid-java-course/42?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=adroid-java-course</link>
		<comments>http://www.stevenvanderpeijl.com/2011/eduction/adroid-java-course/42#comments</comments>
		<pubDate>Thu, 26 May 2011 22:08:28 +0000</pubDate>
		<dc:creator>Steven</dc:creator>
				<category><![CDATA[Education]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[mobile phones]]></category>

		<guid isPermaLink="false">http://www.stevenvanderpeijl.com/?p=42</guid>
		<description><![CDATA[Currently I&#8217;m going an online Android Java course to refresh my JAVA knowledge and get myself ready for making apps on Android mobile phones. I&#8217;m doing this course via edumobile.org, now it is not very expensive so I can&#8217;t expect to much but the quality of the different courses I get is far from high [...]]]></description>
			<content:encoded><![CDATA[<p>Currently I&#8217;m going an online Android Java course to refresh my JAVA knowledge and get myself ready for making <a href="http://www.stevenvanderpeijl.com/tag/apps" class="st_tag internal_tag" rel="tag" title="Posts tagged with apps">apps</a> on Android <a href="http://www.stevenvanderpeijl.com/tag/mobile-phones" class="st_tag internal_tag" rel="tag" title="Posts tagged with mobile phones">mobile phones</a>. I&#8217;m doing this course via edumobile.org, now it is not very expensive so I can&#8217;t expect to much but the quality of the different courses I get is far from high (you get a new part every week). However I don&#8217;t let that stop me, I&#8217;ve seen and experienced poor education institutes before I just need to put some more time into it to get the progress going.</p>
<p>In the time I&#8217;ve been doing this course I see more and more reason to keep doing it as there have been some very interesting developments for Android such as the &#8216;in-app billing&#8217; and the just released Google Wallet functionality on Android. I can&#8217;t wait to release my first own Android app!</p>

	Tags: <a href="http://www.stevenvanderpeijl.com/tag/apps" title="apps" rel="tag">apps</a>, <a href="http://www.stevenvanderpeijl.com/category/eduction" title="Education" rel="tag">Education</a>, <a href="http://www.stevenvanderpeijl.com/tag/mobile-phones" title="mobile phones" rel="tag">mobile phones</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.stevenvanderpeijl.com/2011/eduction/adroid-java-course/42/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

