<?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>André Bloggt &#187; HTML</title>
	<atom:link href="http://blog.andreflemming.de/tag/html/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.andreflemming.de</link>
	<description>Ein Pfadfinder im Internet</description>
	<lastBuildDate>Tue, 24 Jan 2012 15:43:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>[PHP] Links aus Text generieren.</title>
		<link>http://blog.andreflemming.de/2011/12/01/php-links-aus-text-generieren/</link>
		<comments>http://blog.andreflemming.de/2011/12/01/php-links-aus-text-generieren/#comments</comments>
		<pubDate>Thu, 01 Dec 2011 17:33:42 +0000</pubDate>
		<dc:creator>André</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Informatik]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[URL]]></category>

		<guid isPermaLink="false">http://blog.andreflemming.de/?p=778</guid>
		<description><![CDATA[Heute gibt es mal wieder etwas neues in meinem Blog, aber wie immer nichts langes. Dafür ist es heute aber mal wieder nützlich für einige Leute. Ich stand vor dem Problem, naja ok es war eher ne Herausforderung die ich bewältigen wollte,  Links in einem HTML Formatierten Text zu erkennen und dann mit einem a-Tag [...]]]></description>
			<content:encoded><![CDATA[<p>Heute gibt es mal wieder etwas neues in meinem Blog, aber wie immer nichts langes. <img src='http://blog.andreflemming.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Dafür ist es heute aber mal wieder nützlich für einige Leute.</p>
<p>Ich stand vor dem Problem, naja ok es war eher ne Herausforderung die ich bewältigen wollte,  Links in einem HTML Formatierten Text zu erkennen und dann mit einem a-Tag zu versehen, so das diese anklickbar sind.</p>
<p>&nbsp;</p>
<p>Also einfach den ganzen HTML Code  mittels preg_replace_callback &amp; preg_match versucht so umzuformen, dass die Links anklickbar sind.</p>
<p>An sich keine große Sache, einfach alle Textstellen finden, die das Format eines Links haben. Dabei kam es aber immer wieder zu Problemen.</p>
<p>Was mache ich zum Beispiel, wenn der Link schon in einem a-Tag steht?</p>
<p>Nach vielen solcher Probleme habe ich mich dann ans Googeln begeben, irgendwer muss doch schon einmal die selbe Idee gehabt haben. Bei Google habe ich allerdings nichts anständiges gefunden.</p>
<p>Dann kam mir die Idee, versuch es doch einfach mal bei <a title="github" href="http://github.com">github.com</a>!</p>
<p>Und siehe da, ich wurde fündig. <img src='http://blog.andreflemming.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Natürlich möchte ich euch den Code nicht vorenthalten.<br />
<code><br />
function auto_link_text($text) {<br />
$regexp = '/<br />
( # leading text<br />
| # leading HTML tag, or<br />
[^=!:\'"\/]| # leading punctuation, or<br />
^ # beginning of line<br />
)<br />
(<br />
(?:https?:\/\/)| # protocol spec, or<br />
(?:www\.) # www.*<br />
)<br />
(<br />
[-\w]+ # subdomain or domain<br />
(?:\.[-\w]+)* # remaining subdomains or domain<br />
(?::\d+)? # port<br />
(?:\/(?:(?:[~\w\+%-]|(?:[,.;:][^\s$]))+)?)* # path<br />
(?:\?[\w\+%&amp;=.;-]+)? # query string<br />
(?:\#[\w\-]*)? # trailing anchor<br />
)<br />
([[:punct:]]|\s| /x';</p>
<p>return preg_replace_callback($regexp, function($matched) {<br />
list($all, $before, $protocol, $address, $after) = $matched;</p>
<p>// already linked<br />
if (preg_match('/</p>
<p>return "$before<a href="\&quot;$protocol$address\&quot;">$text</a>$after";<br />
}, $text);<br />
}<br />
</code></p>
<p>Zu finden natürlich auch direkt auf github unter: <a href="https://gist.github.com/907604">https://gist.github.com/907604</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.andreflemming.de/2011/12/01/php-links-aus-text-generieren/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Automatisch erkennen ob Feld Pflichtfeld ist [JQuery]</title>
		<link>http://blog.andreflemming.de/2010/03/27/automatisch-erkennen-ob-feld-pflichtfeld-ist-jquery/</link>
		<comments>http://blog.andreflemming.de/2010/03/27/automatisch-erkennen-ob-feld-pflichtfeld-ist-jquery/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 00:12:11 +0000</pubDate>
		<dc:creator>André</dc:creator>
				<category><![CDATA[Alltag]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wochenende]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Formular]]></category>
		<category><![CDATA[Hilfe]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://blog.andreflemming.de/?p=633</guid>
		<description><![CDATA[Ich hatte grade mal wieder etwas langeweile und wollte daher bei einem Projekt eine neue Funktion mit einbauen, die das Absenden eines Formulares verhindert, wenn in diesem nicht alle Felder die mit einem * gekennzeichnet sind ausgefüllt sind. Natürlich geht das ganze nur wenn Javascript eingeschaltet ist, aber das PHP Skript, hat ja eh noch [...]]]></description>
			<content:encoded><![CDATA[<p>Ich hatte grade mal wieder etwas langeweile und wollte daher bei einem Projekt eine neue Funktion mit einbauen, die das Absenden eines Formulares verhindert, wenn in diesem nicht alle Felder die mit einem * gekennzeichnet sind ausgefüllt sind. Natürlich geht das ganze nur wenn Javascript eingeschaltet ist, aber das PHP Skript, hat ja eh noch einen Abfrage ob die Daten auch das richtige Format haben.</p>
<p>Natürlich könnte man für jedes Formular eine eigene Javascript Datei schreiben, in welcher man jedes Formularfeld prüfen lässt, welches Ausgefüllt werden muss. Da mir das aber zu viel Arbeit ist, habe ich mir gedacht ich lese einfach mittels Javascript alle &lt;label&gt; Felder aus, welche in ihrem Text ein * besitzen.</p>
<p>Das ganze habe ich mit dem Javascript Framework <a href="http://jquery.com" target="_blank">JQuery</a> realisiert.</p>
<p>Erst einmal ein Beispiel Formular:<br />
<code><br />
&lt;form method="post"&gt;<br />
&lt;label for="vorname"&gt;Vorname *&lt;/label&gt;<br />
&lt;input type="text" name="vorname" /&gt;&lt;br/&gt;<br />
&lt;label for="nachname"&gt;Nachname&lt;/label&gt;<br />
&lt;input type="text" name="nachname" /&gt;&lt;br/&gt;<br />
&lt;label for="gebDatum"&gt;Geburtsdatum *&lt;/label&gt;<br />
&lt;input type="text" name="gebDatum" /&gt;&lt;br/&gt;<br />
&lt;input type="submit" name="submit" value="Absenden" /&gt;<br />
&lt;/form&gt;</code></p>
<p>In diesem Formular sollen also der Vorname und das Geburtsdatum angegeben werden. Um zu überprüfen ob diese Daten wirklich eingetragen wurden, benötigen wir nun noch ein kleines Javascript. (Achtung: JQuery muss natürlich schon eingebunden sein)</p>
<p><code>&lt;script type="text/javascript"&gt;<br />
$('input[type="submit"]').click(function() //Ausgeführt wenn submit-Button gedrückt<br />
{<br />
var    error    = false;<br />
var form    = $('form').children($(this)); //Suchen des Formulars<br />
var    label    = $(form).find('label:contains("*")'); //Finden der Label-Felder mit einem *<br />
$(label).each(function(index)<br />
{<br />
var name    = $(this).attr('for'); //Suche Namen für input-Feld<br />
if($('input[name='+name+']').val() == "") //Wenn input-Feld leer<br />
{<br />
error    = true;<br />
$('input[name='+name+']').addClass('inputError'); //Hinzufügen von CSS-Klasse<br />
}<br />
});<br />
if(error == true)<br />
{ //Nicht alle Felder ausgefüllt<br />
return false;<br />
}<br />
else<br />
{<br />
return true;<br />
}<br />
});<br />
&lt;/script&gt;</code></p>
<p>Mit diesem kleinen, aber meiner Meinung nach sehr hilfreichen Codeschnipsel kann man sich einiges an Arbeit sparen und dem User einiges an Wartezeit, da die Seite ja nicht erst neu geladen werden muss, bevor er angezeigt bekommt, das er einen Fehler gemacht hat.</p>
<p>Bestimmt kann man an diesem Skript noch viel verbessern, aber es erfüllt erst einmal Sinn und Zweck. Wenn jemand noch einen besseren Vorschlag hat, dann wäre ich dankbar diesen zu bekommen.</p>
<p>[Leider will WordPress den Code nicht so schön speichern wie er ursprünglich war <img src='http://blog.andreflemming.de/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  Ich hoffe ihr könnt ihn trotzdem lesen]</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.andreflemming.de/2010/03/27/automatisch-erkennen-ob-feld-pflichtfeld-ist-jquery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

