<?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>drailing.net &#187; PHP</title>
	<atom:link href="http://drailing.net/index.php/category/entwicklung/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://drailing.net</link>
	<description>informatik, entwicklung, codeschnipsel mit neuen technologien und viel spieltrieb</description>
	<lastBuildDate>Fri, 04 May 2012 16:43:57 +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>blueimp AjaxChat Onlineliste</title>
		<link>http://drailing.net/index.php/2011/05/blueimp-ajaxchat-onlineliste/</link>
		<comments>http://drailing.net/index.php/2011/05/blueimp-ajaxchat-onlineliste/#comments</comments>
		<pubDate>Mon, 09 May 2011 23:14:18 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[JS / AJAX]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://drailing.net/?p=669</guid>
		<description><![CDATA[Auf Anregung von Sumale.nin habe ich hier ein Miniscript geschrieben, womit man die aktuell angemeldeten Chatter sehen und per Ajax-Request in ein Div laden kann. Grundsätzlich wurde das ganze dann doch sehr simpel Benötigt wird jQuery und mein kleines Javascript: &#60;script src=&#34;http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js&#34; type=&#34;text/javascript&#34;&#62;&#60;/script&#62; &#60;script src=&#34;onlineuser.js&#34; type=&#34;text/javascript&#34;&#62;&#60;/script&#62; Diese beiden Scripte müssen auf jedenfall im entsprechenden HTML [...]]]></description>
			<content:encoded><![CDATA[<p>Auf Anregung von <a href="http://germannaruto.de/">Sumale.nin</a> habe ich hier ein Miniscript geschrieben, womit man die aktuell angemeldeten Chatter sehen und per Ajax-Request in ein Div laden kann.</p>
<p>Grundsätzlich wurde das ganze dann doch sehr simpel <img src='http://drailing.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Benötigt wird jQuery und mein kleines Javascript:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;script src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;onlineuser.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;</pre></div></div>

<p>Diese beiden Scripte müssen auf jedenfall im entsprechenden HTML Header vorhanden sein.</p>
<p>Vor dem hochladen, kann in der onlineuser.js noch die UpdateRate und die ID des Divs konfiguriert werden. Per default heisst die  Div-ID &#8220;onlineuser&#8221; und wird alle 10 Sekunden aktualisiert:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> targetDiv <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;onlineuser&quot;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> updateRate <span style="color: #339933;">=</span> <span style="color: #CC0000;">10000</span><span style="color: #339933;">;</span></pre></div></div>

<p>Falls nun das PHP Script nicht auf einer Ebene mit der HTML Datei liegt, muss der Pfad noch entsprechend angepasst werden:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#&quot;</span><span style="color: #339933;">+</span>targetDiv<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;path/to/onlineuser.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>In der onlineuser.php muss, wie auch schon beim Adminpanel, die Datenbankverbindung eingertagen werden und optional noch CSS Klassen mitgegeben werden:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$cssClass</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;styleMe orNot&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$db</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> mysqli<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'localhost'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'db-user-name'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'db-pw'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'db-name'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Grundsätzlich wars das schon! </p>
<p>Ein ZIP mit den beiden benötigten Dateien und einem Beispiel-HTML findet man <a href='http://drailing.net/wp-content/uploads/2011/05/ajaxchat_onlineuser.zip'>hier</a></p>
<p>Ich hoffe es funktioniert bei allen, im Notfall kann man sich aber gerne hier melden <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2011/05/blueimp-ajaxchat-onlineliste/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>AjaxChat Adminpanel 1.0</title>
		<link>http://drailing.net/index.php/2011/01/ajaxchat-adminpanel-1-0/</link>
		<comments>http://drailing.net/index.php/2011/01/ajaxchat-adminpanel-1-0/#comments</comments>
		<pubDate>Fri, 07 Jan 2011 10:23:33 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/index.php/2011/01/ajaxchat-adminpanel-1-0/</guid>
		<description><![CDATA[Dank Patrick Hofmann konnte ich noch einen Bug fixen der dann aufgetreten ist, wenn man in der Datenbank einen zweiten Benutzer zum Admin gemacht hatte. Auch ist inzwischen eine Crossplattform Version entstanden, welche auf allen Sytemen funktionieren sollte. Da hiermit auch ein letzter Bug gefixt ist, habe ich hier eine 1.0 Version gebastelt Den Download [...]]]></description>
			<content:encoded><![CDATA[<p>Dank <a href="http://www.datenreset.de/">Patrick Hofmann</a> konnte ich noch einen Bug fixen der dann aufgetreten ist, wenn man in der Datenbank einen zweiten Benutzer zum Admin gemacht hatte.</p>
<p>Auch ist inzwischen eine Crossplattform Version entstanden, welche auf allen Sytemen funktionieren sollte.</p>
<p>Da hiermit auch ein letzter Bug gefixt ist, habe ich hier eine 1.0 Version gebastelt <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Den Download gibts hier:<br />
<a href='http://drailing.net/wp-content/uploads/2011/04/ajaxchat_adminpanel_1.0.zip'>ajaxchat_adminpanel_1.0</a></p>
<p>und die Anleitung im Ursprungspost ist hier zu finden: <a href="http://www.drailing.net/index.php/2010/04/adminpanel-fur-blueimp-ajaxchat/">Adminpanel für Blueimp-Ajaxchat</a></p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2011/01/ajaxchat-adminpanel-1-0/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>AjaxChat Adminpanel &#8211; Neuer Fix</title>
		<link>http://drailing.net/index.php/2010/09/ajaxchat-adminpanel-neuer-fix/</link>
		<comments>http://drailing.net/index.php/2010/09/ajaxchat-adminpanel-neuer-fix/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 23:15:52 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=574</guid>
		<description><![CDATA[Hiho, leider musste ich feststellen, dass in dem Adminpanel noch ein &#8220;kleiner&#8221; Bug auf Unix Systemen versteckt ist, was das Schreiben der Datei verhindert: Das Problem sind die Slashes&#8230; aktuelle, Windows-Server Version: $datei = fopen&#40;&#34;lib\data\users.php&#34;, &#34;r+&#34;&#41;; für Linux-Server in den Zeilen 265 und 315 die Slashes drehen: 265 - $datei = fopen&#40;&#34;lib/data/users.php&#34;, &#34;r+&#34;&#41;; 315 - [...]]]></description>
			<content:encoded><![CDATA[<p>Hiho,</p>
<p>leider musste ich feststellen, dass in dem <a href="http://www.drailing.net/index.php/2010/04/adminpanel-fur-blueimp-ajaxchat/">Adminpanel</a> noch ein &#8220;kleiner&#8221; Bug auf Unix Systemen versteckt ist, was das Schreiben der Datei verhindert:</p>
<p>Das Problem sind die Slashes&#8230; aktuelle, Windows-Server Version:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$datei</span> <span style="color: #339933;">=</span> <span style="color: #990000;">fopen</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;lib\data\users.php&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;r+&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>für Linux-Server in den Zeilen 265 und 315 die Slashes drehen:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #cc66cc;">265</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$datei</span> <span style="color: #339933;">=</span> <span style="color: #990000;">fopen</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;lib/data/users.php&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;r+&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #cc66cc;">315</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$datei</span> <span style="color: #339933;">=</span> <span style="color: #990000;">fopen</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;lib/data/users.php&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;w&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Zu Allem Überfluss habe ich im Mini-SQL auch noch ein Semikolon zwischen den Statements vergessen&#8230;</p>
<p><del datetime="2011-01-07T10:24:10+00:00">Daher hier nochmal beide zips zum Download:<br />
<a href='http://www.drailing.net/wp-content/uploads/2010/09/ajaxchat_adminpanel_win_fix2.zip'>ajaxchat_adminpanel_win_fix2</a><br />
<a href='http://www.drailing.net/wp-content/uploads/2010/09/ajaxchat_adminpanel_unix_fix2.zip'>ajaxchat_adminpanel_unix_fix2</a></del></p>
<p><del datetime="2011-04-12T21:29:30+00:00">Update: Crossplattformdownload: <a href='http://www.drailing.net/wp-content/uploads/2011/01/ajaxchat_adminpanel_1.0.zip'>ajaxchat_adminpanel_1.0</a></del><br />
<a href='http://drailing.net/wp-content/uploads/2011/04/ajaxchat_adminpanel_1.0.zip'>ajaxchat_adminpanel_1.0</a></p>
<p>Ich hoffe das passt nun <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2010/09/ajaxchat-adminpanel-neuer-fix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nichtraucher mit jQuery</title>
		<link>http://drailing.net/index.php/2010/07/nichtraucher-mit-jquery/</link>
		<comments>http://drailing.net/index.php/2010/07/nichtraucher-mit-jquery/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 14:00:49 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[JS / AJAX]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=551</guid>
		<description><![CDATA[Nachdem ich seit inzwischen 3 Wochen dem Laster des Rauchens trotze und in meiner freien Zeit vor Praxisphase und Bachelorarbeit noch etwas sinnvolles machen wollte, habe ich mich etwas mit dem Javascript/AJAX Framework jQuery beschäftigt. Beides kombiniert, kommt bei mir eine kleine Nichtraucher&#8221;Uhr&#8221; raus: Zur Zeit wird das Datum der letzten Zigarette (, durchschnittliches Gerauche [...]]]></description>
			<content:encoded><![CDATA[<p>Nachdem ich seit inzwischen 3 Wochen dem Laster des Rauchens trotze und in meiner freien Zeit vor Praxisphase und Bachelorarbeit noch etwas sinnvolles machen wollte, habe ich mich etwas mit dem Javascript/AJAX Framework jQuery beschäftigt. Beides kombiniert, kommt bei mir eine kleine Nichtraucher&#8221;Uhr&#8221; raus:</p>
<p>Zur Zeit wird das Datum der letzten Zigarette (, durchschnittliches Gerauche und Preis einer Schachtel erfasst und daraus die Zeit als Nichtraucher und das dabei gesparte Geld errechnet.</p>
<p><a href="http://smoking.drailing.net/"><img src="http://www.drailing.net/wp-content/uploads/2010/07/NonSmoking_1279806743864.png" alt="" title="NonSmoking_1279806743864" width="600" height="250" class="aligncenter size-full wp-image-553" /></a></p>
<p>In Zukunft wird die Toplist noch um das gesparte Geld erweitert, eine kleine API gebastelt die die &#8220;Uhr&#8221; ausgeben kann (ohne angemeldet zu sein) und bei ganz viel Laune wird noch das Standarddesign ersetzt.</p>
<p>Wer sich nicht registrieren will, kann sich mit test/test auch das innenleben mal amschauen.</p>
<p>Eine schöne Sache dieses jQuery <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2010/07/nichtraucher-mit-jquery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Little School Helper &#8211; Zeugnis schreiben leicht gemacht</title>
		<link>http://drailing.net/index.php/2010/06/little-school-helper-zeugnis-schreiben-leicht-gemacht/</link>
		<comments>http://drailing.net/index.php/2010/06/little-school-helper-zeugnis-schreiben-leicht-gemacht/#comments</comments>
		<pubDate>Sun, 06 Jun 2010 18:28:37 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=498</guid>
		<description><![CDATA[Sodale, nach ca 1 Jahr Freizeitentwicklung, vielen Pausen, einem kompletten Neustart aufgrund fehlender Planung und der Weitsicht im Datenbankdesign, möchte ich nun den &#8220;Little School Helper&#8221; vorstellen. Die Idee entstand durch meine Mutter: Zuzuschauen wie die heutigen Grundschullehrer Zeugnisse schreiben macht jeden Informatiker traurig. Das werden Wordtemplates auf USB Sticks ausgetauscht um sich im schlimmsten [...]]]></description>
			<content:encoded><![CDATA[<p>Sodale,</p>
<p>nach ca 1 Jahr Freizeitentwicklung, vielen Pausen, einem kompletten Neustart aufgrund fehlender Planung und der Weitsicht im Datenbankdesign, möchte ich nun den &#8220;Little School Helper&#8221; vorstellen.</p>
<p>Die Idee entstand durch meine Mutter: Zuzuschauen wie die heutigen Grundschullehrer Zeugnisse schreiben macht jeden Informatiker traurig. Das werden Wordtemplates auf USB Sticks ausgetauscht um sich im schlimmsten Fall gegenseitig das Geschriebene zu überschreiben oder im Klassensaal zu vergessen.</p>
<p>Es musste also ein System her was zentralisiert die Zeugnisse speichert und jedem, auch den gleichzeitigen Zugriff auf ein Zeugnis, von Zuhause aus ermöglicht. Da kam die Idee: ich will das Zeugnisschreiben für Grundschullehrer vereinfachen! Das Ziel war also gesteckt, nix großes, doch das Vorgenommene gut zu machen war der Anspruch an mich selbst.</p>
<p>Nach einer Version mit der Grundfunktionalität war ich dann 2 Tage bei einem guten Freund (<a href="http://werkvoll.de/">Link</a>)  im Büro um das Design auch entsprechend ansprechend zu bauen. Unschönerweise muss ich mich da die Tage noch mit den ganzen CSS Hacks auseinandersetzen, da der IE zT einfach nicht im Kontext bleibt und ganz andere Parents / Childs anspricht als mein Freund der Firefox&#8230; steht also noch auf der TODO Liste.</p>
<p>Inzwischen wurde der Little School Helper einem kleineren Kreis an Lehrern und Direktoren vorgestellt und noch einige Wünsche / Änderungen realisiert und stelle Ihn nun hier vor um vieleicht noch mehr Feedback von Fachfremden, aber technisch versierterem Publikum zu bekommen.</p>
<p>Die Featureliste ist inzwischen auch um einiges angewachsen, über Statistiken, automatisierte Schuljahreswechsel, eine komplette Rechteverwaltung der Kollegen, bis hin zu PDF Generierung von echten Zeugnis Templates (bisher nur für RLP). Eine Doku ist noch nicht fertig, deshalb ists am einfachsten sich das ganze mal selber anzuschauen:</p>
<p>Eine Testversion gibts <a href="http://lsh.drailing.net/" target="blank">hier</a>, mit Benutzername: <strong>admin</strong> und Passwort: <strong>test</strong> kann man sich anmelden und die komplette Funktionalität testen.</p>
<p><a href="http://lsh.drailing.net/" target="blank"><img src="http://www.drailing.net/wp-content/uploads/2010/06/Zeugnisse_1275848675590.png" alt="" title="Zeugnisse_1275848675590" width="500" height="300" class="aligncenter size-full wp-image-500" /></a></p>
<p>Übrigens: ich suche zur Zeit eine Grundschule die sich den Little School Helper mal genauer anschauen, und vieleicht sogar im produktiven Zeugnisschreiben benutzen/testen möchte. Wer also selbst als lehrendes Organ tätig ist oder jemanden kennt für den es von Interesse sein könnte: meldet euch bitte unter <a href="mailto:littleschoolhelper@drailing.net">littleschoolhelper@drailing.net</a></p>
<p>Wie immer, über Feedback egal welcher Form freue ich mich sehr <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Grüße,<br />
Christian</p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2010/06/little-school-helper-zeugnis-schreiben-leicht-gemacht/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Umlautefix für das Adminpanel</title>
		<link>http://drailing.net/index.php/2010/05/umlautefix-fur-das-adminpanel/</link>
		<comments>http://drailing.net/index.php/2010/05/umlautefix-fur-das-adminpanel/#comments</comments>
		<pubDate>Tue, 11 May 2010 19:42:41 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=490</guid>
		<description><![CDATA[So einfach kanns sein, wenn man weiß wies geht Um mit meinem Adminpanel auch Umlaute schreiben zu können muss nur eine kleine Zeile (in Zeile 307) eingefügt werden: 306 - $input = $input.&#34;?&#62;&#34;; 307 - $input = utf8_encode&#40;$input&#41;; 308 - fwrite&#40;$datei, $input&#41;; Bitte die neueste Version ajaxchat_adminpanel_1.0 downloaden.]]></description>
			<content:encoded><![CDATA[<p>So einfach kanns sein, wenn man weiß wies geht <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Um mit meinem Adminpanel auch Umlaute schreiben zu können muss nur eine kleine Zeile (in Zeile 307) eingefügt werden:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #cc66cc;">306</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$input</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$input</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;?&gt;&quot;</span><span style="color: #339933;">;</span>
<span style="color: #cc66cc;">307</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$input</span> <span style="color: #339933;">=</span> <span style="color: #990000;">utf8_encode</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$input</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #cc66cc;">308</span> <span style="color: #339933;">-</span> <span style="color: #990000;">fwrite</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$datei</span><span style="color: #339933;">,</span> <span style="color: #000088;">$input</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Bitte die neueste Version <a href='http://www.drailing.net/wp-content/uploads/2011/01/ajaxchat_adminpanel_1.0.zip'>ajaxchat_adminpanel_1.0</a> downloaden.</p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2010/05/umlautefix-fur-das-adminpanel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adminpanel für blueimp AjaxChat</title>
		<link>http://drailing.net/index.php/2010/04/adminpanel-fur-blueimp-ajaxchat/</link>
		<comments>http://drailing.net/index.php/2010/04/adminpanel-fur-blueimp-ajaxchat/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 22:55:54 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=473</guid>
		<description><![CDATA[Hiho, auf blueimp.net gibts einen Open Source Ajax Chat der auf jedem Webserver mit php und MySql ganz einfach installiert werden kann. Das ist ne super Sache um sich schnell mit mehreren Menschen abzustimmen ohne ICQ Nummern oder Emailadressen austauschen zu müssen. Bei mir kommt er zB für ein Browserspiel zum Einsatz. Leider ist die [...]]]></description>
			<content:encoded><![CDATA[<p>Hiho,</p>
<p>auf <a href="https://blueimp.net/ajax/">blueimp.net</a> gibts einen Open Source Ajax Chat der auf jedem Webserver mit php und MySql ganz einfach installiert werden kann. Das ist ne super Sache um sich schnell mit mehreren Menschen abzustimmen ohne ICQ Nummern oder Emailadressen austauschen zu müssen. Bei mir kommt er zB für ein Browserspiel zum Einsatz.</p>
<p>Leider ist die Verwaltung noch etwas unkonfortabel, alle Benutzer müssen über eine &#8220;users.php&#8221; Datei in ein Array eingepflegt werden. (je nach Konfiguration kann man sich auch ohne Passwort einloggen)</p>
<p>Dazu habe ich mir was kleines einfallen lassen um die Benutzer über eine Datenbanktabelle zu pflegen und ein kleines funktionales Adminpanel gebastelt <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Kurze Featureliste:<br />
  <em>* Adminaccount:</em><br />
    &#8211; Benutzer anlegen (auch Moderator)<br />
    &#8211; Benutzer löschen<br />
    &#8211; Passwort für Benutzer zurücksetzen<br />
<em>  * Useraccount</em><br />
    &#8211; eigenes Passwort ändern</p>
<p>Die Idee dahinter ist ganz simpel:<br />
Wir legen alle Benutzer in einer Datenbank ab und schreiben die Datei (users.php), die Benutzer verwaltet bei Änderungen neu.</p>
<p>Um diese Administration zu ermöglichen brauchen wir Schreibrechte auf CHAT_ROOT/lib/data/users.php und müssen eine Benutzertabelle in der Datenbank anlegen:</p>
<p>Im INSERT Statement kann ein beliebiger Adminbenutzer angelegt werden, hier als Standard als Benutzername und Passwort &#8220;admin&#8221;.</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> <span style="color: #ff0000;">`ajax_chat_user`</span> <span style="color: #66cc66;">&#40;</span>
  <span style="color: #ff0000;">`id`</span> <span style="color: #993333; font-weight: bold;">INT</span><span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">11</span><span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">NOT</span> <span style="color: #993333; font-weight: bold;">NULL</span> <span style="color: #993333; font-weight: bold;">AUTO_INCREMENT</span><span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`username`</span> text<span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`password`</span> text<span style="color: #66cc66;">,</span>
  <span style="color: #ff0000;">`role`</span> text<span style="color: #66cc66;">,</span>
  <span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">`id`</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span>;
&nbsp;
<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> <span style="color: #ff0000;">`ajax_chat_user`</span> <span style="color: #993333; font-weight: bold;">VALUES</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'1'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'admin'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'admin'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'AJAX_CHAT_ADMIN'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>

<p>In der Datei &#8220;admin.php&#8221; muss dann noch die entsprechende Datenbankverbindung an mehreren Stellen eingetragen werden.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$db</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> mysqli<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'localhost'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'db-user-name'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'db-pw'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'db-name'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Am einfachsten über suchen / ersetzen:<br />
&#8220;db-user-name&#8221; -> eigener Datenbankbenutzer<br />
&#8220;db-pw&#8221; -> zugehöriges Datenbankpasswort<br />
&#8220;db-name&#8221; -> Datenbankname</p>
<p>Falls der Adminbenutzer einen anderen Namen als &#8220;admin&#8221; bekommen hat, müsst ihr in der Datei auch noch an 2 Stellen den entsprechend gewählten Namen eintragen (Zeile 289 und 325), einmal für das schreiben der users.php, und einmal um das evtl versehentliche Löschen zu verhindern.</p>
<p>Die admin.php dannach einfach ins Rootverzeichnis des Chats legen, und über www.url-to-chat.net/admin.php einloggen.</p>
<p>Bekannte Fehler:<br />
- Beim Schreiben der Datei werden Umlaute nicht richtig dargestellt, daher können zur Zeit keine Benutzer/Passwörter mit Umlauten verwendet werden.</p>
<p>Kommentiert ist so gut wie nix, dafür sollte der Code recht sprechend und leicht zu verstehen sein.<br />
Zum Download gehts hier:<br />
<del datetime="2011-01-07T10:25:49+00:00">UPDATE: bitte die gefixte Version <a href="http://www.drailing.net/index.php/2010/09/ajaxchat-adminpanel-neuer-fix/">hier</a> laden</del></p>
<p>Die neueste Version gibts hier: <a href='http://drailing.net/wp-content/uploads/2011/04/ajaxchat_adminpanel_1.0.zip'>ajaxchat_adminpanel_1.0</a></p>
<p>Über Feedback jeglicher Art würde ich mich natürlich freuen <img src='http://drailing.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Grüße,<br />
Christian</p>
<p>Nachtrag:<br />
ACHTUNG!<br />
Falls ihr die kleine Erweiterung benutzen wollt: Es wird die Datei in der die Benutzer zuvor verwaltet wurden gnadenlöse überschrieben!<br />
Bedeutet: Wenn zuvor Benutzer in der Datei gepflegt wurden, sollte man sich ein Backup machen und diese dann über die Oberfläche in die Datenbank eintragen.</p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2010/04/adminpanel-fur-blueimp-ajaxchat/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>PHP Schnipsel I</title>
		<link>http://drailing.net/index.php/2009/12/php-schnipsel-i/</link>
		<comments>http://drailing.net/index.php/2009/12/php-schnipsel-i/#comments</comments>
		<pubDate>Tue, 29 Dec 2009 12:43:01 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Studium (done)]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=376</guid>
		<description><![CDATA[Guten Morgen, da sich inzwischen auch EWA mit den etwas interessanteren Themen beschäftigt und sich im laufe der Zeit auch ausserhalb von EWA etwas nützliches angesammelt hat, hier ein paar kleine Codeschnipsel auf die ich immer wieder gerne zurückgreiffe: Komplettes POST Array auslesen und ausgeben: foreach&#40;$_POST as $key =&#62; $value&#41; &#123; print&#40;htmlspecialchars&#40;&#34;Name: [$key] Wert: [$value]&#34;&#41;.&#34;&#60;br&#62;&#34;&#41;; [...]]]></description>
			<content:encoded><![CDATA[<p>Guten Morgen,</p>
<p>da sich inzwischen auch EWA mit den etwas interessanteren Themen beschäftigt und sich im laufe der Zeit auch ausserhalb von EWA etwas nützliches angesammelt hat, hier ein paar kleine Codeschnipsel auf die ich immer wieder gerne zurückgreiffe:</p>
<p>Komplettes POST Array auslesen und ausgeben:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_POST</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$key</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span>  <span style="color: #009900;">&#123;</span> 
    <span style="color: #b1b100;">print</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">htmlspecialchars</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Name: [<span style="color: #006699; font-weight: bold;">$key</span>] Wert: [<span style="color: #006699; font-weight: bold;">$value</span>]&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;br&gt;&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Komplettes POST Array unescapen:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">get_magic_quotes_gpc</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$_POST</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array_map</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'stripslashes'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$_POST</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Includes als Dateinamen managen:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$_GET</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #990000;">is_file</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;files/&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;site&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #b1b100;">include</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;files/&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;site&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">else</span>
    <span style="color: #b1b100;">include</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;welcome.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Letzte Besuche von Google Bot registrieren:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$host</span> <span style="color: #339933;">=</span> <span style="color: #990000;">gethostbyaddr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'REMOTE_ADDR'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>    
<span style="color: #000088;">$domain</span> <span style="color: #339933;">=</span> <span style="color: #990000;">explode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;.&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$host</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>   
<span style="color: #000088;">$domain_array</span> <span style="color: #339933;">=</span> <span style="color: #990000;">count</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$domain</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span>   
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$domain</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;<span style="color: #006699; font-weight: bold;">$domain_array</span>&quot;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">&quot;googlebot&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>  
    <span style="color: #666666; font-style: italic;">//information verwalten, insert oder ausgabe </span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Und kennt evtl irgendjemand ein WordPressPlugin was es erlaubt den Code schön formatiert zu posten?<br />
Für Tips bin ich sehr dankbar <img src='http://drailing.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Grüße,<br />
Christian</p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2009/12/php-schnipsel-i/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>EWA Tools (Entwicklung Webbasierter Anwendungen)</title>
		<link>http://drailing.net/index.php/2009/10/ewa-tools-entwicklung-webbasierter-anwendungen/</link>
		<comments>http://drailing.net/index.php/2009/10/ewa-tools-entwicklung-webbasierter-anwendungen/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 11:01:48 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Studium (done)]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=310</guid>
		<description><![CDATA[Guten Morgen! Da EWA ja langsam mit der eigentlichen Entwicklung beginnt, dachte ich mir dass es vielleicht sinnvoll ist mal die gängigsten Tools zusammenzufassen: - Aptana: Link sehr komfortabler Editor auf Eclipsebasis - XAMPP: Link eine Distribution aus Apache Webserver, PHP und MySQL &#8211; sehr einfach zu installieren und super praktisch zum lokalen Entwickeln. Firefox [...]]]></description>
			<content:encoded><![CDATA[<p>Guten Morgen!</p>
<p>Da EWA ja langsam mit der eigentlichen Entwicklung beginnt, dachte ich mir dass es vielleicht sinnvoll ist mal die gängigsten Tools zusammenzufassen:</p>
<p>- Aptana: <a href="http://www.aptana.org/">Link</a><br />
sehr komfortabler Editor auf Eclipsebasis</p>
<p>- XAMPP: <a href="http://www.apachefriends.org/de/xampp.html">Link</a><br />
eine Distribution aus Apache Webserver, PHP und MySQL &#8211; sehr einfach zu installieren und super praktisch zum lokalen Entwickeln.</p>
<p><strong>Firefox Plugins:</strong></p>
<p> &#8211; Firebug: <a href="https://addons.mozilla.org/de/firefox/addon/1843">Link</a><br />
einfach DAS Werkzeug ohne das wohl kein Webentwickler mehr leben möchte. Ermöglicht das genaue Analysieren und Debuggen von HTML, CSS und Javascript.</p>
<p>- IE Tab: <a href="https://addons.mozilla.org/de/firefox/addon/10909">Link</a><br />
erlaubt das Darstellen der Seite in der Internet Explorer Engine in einem eigenen Firefox Tab.</p>
<p>- HTML Validator: <a href="https://addons.mozilla.org/de/firefox/addon/249">Link</a><br />
prüft jede Webseite auf Standardkonformität und zeigt dabei Warnings und Fehler an.</p>
<p>- Dust-Me Selectors: <a href="https://addons.mozilla.org/de/firefox/addon/5392">Link</a><br />
scannt das CSS (auf Wunsch automatisch) und erstellt eine Liste mit genutzen und ungenutzen CSS Klassen</p>
<p><strong>Internet Explorer:</strong></p>
<p>IE Developer Toolbar: <a href="http://www.microsoft.com/downloadS/details.aspx?familyid=E59C3964-672D-4511-BB3E-2D5E1DB91038&#038;displaylang=en">Link</a><br />
ähnlich wie Firebug für Internet Explorer, leider bei weitem nicht so komfortabel.</p>
<p>Und zum Schluss noch ein Link zum <a href="http://matthiasschuetz.com/werkzeugkoffer/">&#8220;Werkzeugkoffer für Webentwickler&#8221;</a> &#8211; eine sehr umfangreiche und gut sortierte Linksammlung in der man immer mal wieder was nützliches neues finden kann.<br />
(gefunden bei <a href="http://webthreads.de/2009/08/dem-webentwickler-sein-werkzeugkoffer/">Webthreads</a> )</p>
<p>Ich glaube für den Moment habe ich nix vergessen, vielleicht hilfts ja dem ein oder anderen etwas weiter <img src='http://drailing.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Grüße,<br />
Christian</p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2009/10/ewa-tools-entwicklung-webbasierter-anwendungen/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wikiling</title>
		<link>http://drailing.net/index.php/2009/06/wikiling/</link>
		<comments>http://drailing.net/index.php/2009/06/wikiling/#comments</comments>
		<pubDate>Thu, 04 Jun 2009 18:04:31 +0000</pubDate>
		<dc:creator>dreiling</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.drailing.net/?p=141</guid>
		<description><![CDATA[Ahoi! heute habe ich die Ehre das erste, mit einem Komilitone zusammen (Oli &#8211; &#8220;ich bin der Kuschel-Obi-Van-Auto&#8221;) selbstentwickelten und mehr oder weniger einsatzbereitem (mini)Wiki System zu präsentieren: Wikiling! Wikiling wurdekomplett in PHP / Javascript geschrieben und baut auf einer MySQL Datenbank auf. Dabei hat man alles was man braucht um kleinere Projekte zu starten, [...]]]></description>
			<content:encoded><![CDATA[<p>Ahoi!</p>
<p>heute habe ich die Ehre das erste, mit einem Komilitone zusammen (Oli &#8211; &#8220;ich bin der Kuschel-Obi-Van-Auto&#8221;) selbstentwickelten und mehr oder weniger einsatzbereitem (mini)Wiki System zu präsentieren: Wikiling!</p>
<p>Wikiling wurdekomplett in PHP / Javascript geschrieben und baut auf einer MySQL Datenbank auf.<br />
Dabei hat man alles was man braucht um kleinere Projekte zu starten, allgemeinen Brainstorm niederzuschreiben oder einfach nur eine schlanke Lösung um sonstigen Nonsense ins Netz zu prügeln.</p>
<p>Die Benutzerverwaltung besteht aus normalen Gästen und Admins. Die Einschränkung für Gäste besteht lediglich darin, dass keine Themen gelöscht werden können und von Admins nicht freigegebene Themen nicht editiert werden können.<br />
Um sich als Admin zu registrieren wird in die &#8220;neue Kategorie&#8221; ein Codewort eingegeben. Im Falle von meiner öffentlichen Version einfach &#8220;admin&#8221;.</p>
<p>Sobald alle Bugs ausgemerzt wurden, wirds den Quellcode auch zum Download und persönlichem Gebrauch geben.</p>
<p>Die erste Version für alle zugänglich gibts hier (is das Logo nicht toll!?):</p>
<p><a href="http://wikiling.drailing.net"><img src="http://www.drailing.net/wp-content/uploads/2009/05/logopng.jpg" alt="logopng" title="logopng" width="100" height="100" class="aligncenter size-full wp-image-159" /></a></p>
<p>Über Rückmeldungen über Bugs oder wünschenswerte weitere Funktionen würden wir uns sehr freuen!</p>
<p>Grüße,<br />
Christian</p>
]]></content:encoded>
			<wfw:commentRss>http://drailing.net/index.php/2009/06/wikiling/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

