<?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>Baronen &#187; Javascript</title>
	<atom:link href="http://www.baronen.org/category/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.baronen.org</link>
	<description>Baronen en webbprogrammerare</description>
	<lastBuildDate>Tue, 27 Jul 2010 11:52:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>iPhonebilder på Google Maps via GPS-tag</title>
		<link>http://www.baronen.org/iphonebilder-pa-google-maps-via-gps-tag/</link>
		<comments>http://www.baronen.org/iphonebilder-pa-google-maps-via-gps-tag/#comments</comments>
		<pubDate>Sun, 17 Jan 2010 16:27:39 +0000</pubDate>
		<dc:creator>Baronen</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.baronen.org/?p=955</guid>
		<description><![CDATA[Det var ett tag sedan jag skrev en guide inom PHP nu, därför tänkte jag skriva lite Google Maps och PHP:s funktion exif_read_data. Jag kommer i detta exemplet visa hur du plockar ut GPS-information från bilder tagna med en iPhone för att sedan visa vart bilden är tagen på Google Maps. Som nämnt tidigare kommer [...]


Relaterade poster:<ol><li><a href='http://www.baronen.org/google-lanserar-go-language/' rel='bookmark' title='Permanent Link: Google lanserar Go Language'>Google lanserar Go Language</a> <small>Google verkar aldrig sluta att lansera nya produkter, den senaste...</small></li>
<li><a href='http://www.baronen.org/doogle-4-google-kommer-till-kalmar/' rel='bookmark' title='Permanent Link: Doogle 4 Google kommer till Kalmar'>Doogle 4 Google kommer till Kalmar</a> <small>Den 21 Juli kommer Doogle 4 Google till larmtorget i...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Det var ett tag sedan jag skrev en guide inom PHP nu, därför tänkte jag skriva lite Google Maps och PHP:s funktion <code><a href="http://se.php.net/manual/en/function.exif-read-data.php">exif_read_data</a></code>.</p>
<p>Jag kommer i detta exemplet visa hur du plockar ut GPS-information från bilder tagna med en iPhone för att sedan visa vart bilden är tagen på Google Maps. Som nämnt tidigare kommer jag använda funktionen exif_read_data som hämtar ut exif-information från jpg bilder.</p>
<p>Beroende på vilken kamera bilden är tagen med kan man få ut information om bilden, till exempel GPS position, när bilden är tagen, vilken bländarinställning som användes med mera, men nu ska vi fokusera på att hämta ut GPS position.</p>
<p><img src="http://www.baronen.org/wp-content/uploads/2010/01/map1.jpg" alt="" title="map" width="602" height="90" class="alignnone size-full wp-image-984" /><br />
<span id="more-955"></span><br />
<a href="http://www.baronen.org/baronen_demos/picture_on_googlemaps/picture.php" rel="nofollow">Se demo</a> eller ladda ner <a href="http://www.baronen.org/wp-content/uploads/2010/01/picture_gps.zip">källkoden här</a>.</p>
<h3>Hämta bildens GPS position</h3>
<p>Vi börjar med att hämta all information om bilden.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$metaData</span> <span style="color: #339933;">=</span> <span style="color: #990000;">exif_read_data</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'bild.jpg'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'ANY_TAG'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">print_r</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$metaData</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Detta resulterar i att vi får ut all meta information om bilden. Men det vi är ute efter är GPS informationen, här hittar vi GPSLongitud och GPSLatitud.</p>
<p><img src="http://www.baronen.org/wp-content/uploads/2010/01/Bild-14.png" alt="" title="Bild 14" width="218" height="242" class="alignnone size-full wp-image-958" /></p>
<h3>Ändra GPS format</h3>
<p>Nackdelen är vi inte får ut GPS informationen i samma format som Google Maps använder, utan vi måste konvertera information till formatet DD (Decimal Degress).<br />
Jag är ingen expert på GPS format med formeln ser ut enligt följande:<br />
<code>DD = Grader + (Minuter / 60)</code>.<br />
Om vi tar exemplet från bilden så blir det: <code>56 + (39,92 / 60) = 56.6653333333</code></p>
<p>Jag har två funktioner för att returnera positionen.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> convertToDecimalDegress<span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">divide</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span>  <span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">divide</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">60</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> divide<span style="color: #009900;">&#40;</span><span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$values</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;">$value</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">/</span> <span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Som vi ser på bilden har vi värden i arrayen som till exempel, 3992/100, denna uträkning måste göras innan vi kan konvertera till DD formatet. Funktionen <code>divide</code> gör detta.<br />
Funktionen <code>convertToDecimalDegress</code> gör uträkningen till formatet DD.</p>
<h3>Resten av klassen</h3>
<p>Vi har två klasser som tar hand om uträkningen. Nu är det dags att fylla på klassen med mer funktioner.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> MetaReader
<span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000088;">$metaData</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> __construct<span style="color: #009900;">&#40;</span><span style="color: #000088;">$imageName</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">metaData</span> <span style="color: #339933;">=</span> <span style="color: #990000;">exif_read_data</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$imageName</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'ANY_TAG'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> getLatitude<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">metaData</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'GPSLatitude'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">convertToDecimalDegress</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">metaData</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'GPSLatitude'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> getLongitude<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">metaData</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'GPSLatitude'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">convertToDecimalDegress</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">metaData</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'GPSLongitude'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> convertToDecimalDegress<span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">divide</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span>  <span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">divide</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">60</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> divide<span style="color: #009900;">&#40;</span><span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$values</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;">$value</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">/</span> <span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Det vi har lagt till är en konstruktor som tar emot filnamnet som parameter, sen har vi två funktioner för att returnera latitud och longitud, <code>getLatitude(), getLongitude()</code>.</p>
<h3>Visa bilderna på Google Maps</h3>
<p>Det första du måste göra för att använda Google Maps är att hämta en <a href="http://code.google.com/apis/maps/signup.html">API-nyckel</a>, detta kan du göra hos <a href="http://code.google.com/apis/maps/signup.html">Google</a>.</p>
<p>När du väl har fått din nyckel från Google är det dags att hämta GPS informationen från en bild.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$metaObj</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MetaReader<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'bild.jpg'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$latitude</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$metaObj</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getLatitude</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$longitude</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$metaObj</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getLongitude</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Nu får vi ut GPS-information från bilden i samma format som krävs för Google Maps. Nu är det bara att skicka in värdena till Google Maps javascript.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;http://maps.google.com/maps?file=api&amp;amp;v=2&amp;amp;sensor=true_or_false&amp;amp;key=DIN_API_NYCKEL&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script language<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;JavaScript&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;application/javascript&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">function</span> initialize<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> map <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> GMap2<span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;map_canvas&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	map.<span style="color: #660066;">setCenter</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">new</span> GLatLng<span style="color: #009900;">&#40;</span><span style="color: #339933;">&lt;?</span>php echo $latitude<span style="color: #339933;">?&gt;,</span> <span style="color: #339933;">&lt;?</span>php echo $longitude<span style="color: #339933;">?&gt;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">12</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> point <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> GLatLng<span style="color: #009900;">&#40;</span><span style="color: #339933;">&lt;?</span>php echo $latitude<span style="color: #339933;">?&gt;,&lt;?</span>php echo $longitude<span style="color: #339933;">?&gt;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	map.<span style="color: #660066;">addOverlay</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">new</span> GMarker<span style="color: #009900;">&#40;</span>point<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	map.<span style="color: #660066;">openInfoWindowHtml</span><span style="color: #009900;">&#40;</span>map.<span style="color: #660066;">getCenter</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> document.<span style="color: #660066;">createTextNode</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;&lt;?php echo $imageName; ?&gt;&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	map.<span style="color: #660066;">setUIToDefault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
<span style="color: #009900;">&#125;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></pre></div></div>

<p>Här är javascript-koden för att placera ut en markering samt en textruta på kartan. För att köra denna javascriptfunktion kallar vi på den: <code>&lt;body onload="initialize();" onunload="GUnload();"&gt;</code></p>
<p>Ladda gärna ner källkoden för att studera koden närmare.<br />
Jag hoppas du får lite nytta av detta exemplet.</p>
<h3>Demo och källkod</h3>
<p><a href="http://www.baronen.org/baronen_demos/picture_on_googlemaps/picture.php" rel="nofollow">Se demo</a> eller ladda ner <a href="http://www.baronen.org/wp-content/uploads/2010/01/picture_gps.zip">källkoden här</a>.</p>


<p>Relaterade poster:<ol><li><a href='http://www.baronen.org/google-lanserar-go-language/' rel='bookmark' title='Permanent Link: Google lanserar Go Language'>Google lanserar Go Language</a> <small>Google verkar aldrig sluta att lansera nya produkter, den senaste...</small></li>
<li><a href='http://www.baronen.org/doogle-4-google-kommer-till-kalmar/' rel='bookmark' title='Permanent Link: Doogle 4 Google kommer till Kalmar'>Doogle 4 Google kommer till Kalmar</a> <small>Den 21 Juli kommer Doogle 4 Google till larmtorget i...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.baronen.org/iphonebilder-pa-google-maps-via-gps-tag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter på din webbplats med PHP och jQuery</title>
		<link>http://www.baronen.org/twitter-pa-din-webbplats-med-php-och-jquery/</link>
		<comments>http://www.baronen.org/twitter-pa-din-webbplats-med-php-och-jquery/#comments</comments>
		<pubDate>Thu, 20 Aug 2009 18:11:59 +0000</pubDate>
		<dc:creator>Baronen</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webbutveckling]]></category>

		<guid isPermaLink="false">http://www.baronen.org/?p=544</guid>
		<description><![CDATA[Aktiviteten på Twitter har ökat lavinartat den senaste tiden, inte minst i Sverige. Många som bloggar använder även twitter. Jag tänker i denna post beskriva hur du med hjälp av PHP och simpleXML hämtar ditt twitter-flöde och publicerar det på din egen webbplats. När sedan biten med PHP och SimpleXML är färdig, kommer jag gå [...]


Relaterade poster:<ol><li><a href='http://www.baronen.org/bing-och-twitter-slar-sig-ihop/' rel='bookmark' title='Permanent Link: Bing och Twitter slår sig ihop'>Bing och Twitter slår sig ihop</a> <small>Idag har det blivit officiellt att Bing och Twitter har...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Aktiviteten på Twitter har ökat lavinartat den senaste tiden, inte minst i Sverige. Många som bloggar använder även twitter. Jag tänker i denna post beskriva hur du med hjälp av PHP och simpleXML hämtar ditt twitter-flöde och publicerar det på din egen webbplats.</p>
<p>När sedan biten med PHP och SimpleXML är färdig, kommer jag gå igenom hur man kan använda jQuery för att snurra twitter-flödet.<br />
<span id="more-544"></span><br />
<img class="size-full wp-image-545 alignright" title="twitter-flow" src="http://www.baronen.org/wp-content/uploads/2009/08/twitter-flow.png" alt="twitter-flow" width="165" height="203" /></p>
<h3>Enkel Steg för steg</h3>
<p>Jag kommer börja med att hämta twitter-flödet med hjälp av funktionen <a href="http://se2.php.net/manual/en/function.file-get-contents.php"><code>file_get_contents</code></a>. Denna funktion läser in en fil till en textsträng.</p>
<p><strong>Steg två</strong> att att använda simpleXML för att tolka strängen som XML, samt plocka ut de delar i flödet jag är intresserad av.</p>
<p><strong>Steg tre </strong>är att göra om flödet till XHTML och publicera det på webbplatsen.</p>
<h3>Börja koda</h3>
<p>Jag börjar med att skapa klassen <code>Twitter.php</code>. Denna klass sköter hämtningen av flödet samt hantering av XML. Klassen innerhåller en egenskap, en konstruktor och en funktion.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> Twitter
<span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000088;">$twitterFeed</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> __construct<span style="color: #009900;">&#40;</span><span style="color: #000088;">$twitterFeed</span><span style="color: #339933;">,</span> <span style="color: #000088;">$numberOfTweets</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">twitterFeed</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$twitterFeed</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot;?count=&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$numberOfTweets</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> processFeed<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$twitterXml</span> <span style="color: #339933;">=</span> <span style="color: #990000;">file_get_contents</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">twitterFeed</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$xml</span> <span style="color: #339933;">=</span> <span style="color: #990000;">simplexml_load_string</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$twitterXml</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$feedArray</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$xml</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">channel</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">item</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$item</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #000088;">$feedArray</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'title'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$item</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">title</span><span style="color: #339933;">,</span>
					 <span style="color: #0000ff;">'pubDate'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$item</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">pubDate</span><span style="color: #339933;">,</span>
					 <span style="color: #0000ff;">'link'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$item</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">link</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #009900;">&#125;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$feedArray</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Om vi går igenom koden lite kort så har vi en privat egenskap, <code>$twitterFeed</code>, denna innehåller adressen till flödet. Konstruktorn tar två parametrar, detta är alltså adressen till flödet samt hur många twitterposter vi ska hämta.</p>
<p>Det är funktionen <code>processFeed</code> som gör grovjobbet. Det första vi gör i funktionen är att läsa in hela flödet med funktionen <code>file_get_contents</code>.  För att hantera flödet som XML används funktionen <code>simplexml_load_string</code>.</p>
<p>Efter vi läst in flödet som xml är det dags att iterera igenom det och spara undan de värden vi vill använda, i detta fall titeln, publiceringsdatumet samt länken till inlägget. Dessa värden sparar vi undan i en array, till sist returnerar vi hela arrayen.</p>
<h3>Publicera Twitter på din sida</h3>
<p>Jag har skapat <code>index.php</code> som jag kommer visa innehållet på.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000088;">$twitterObject</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Twitter<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'http://twitter.com/statuses/user_timeline/17820230.rss'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$allItems</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$twitterObject</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">processFeed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
&lt;ul&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$allItems</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$item</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;li&gt;&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;a href='&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$item</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'link'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;'&gt;&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$item</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'title'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;/a&gt; - &quot;</span><span style="color: #339933;">.</span><span style="color: #990000;">date</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Y-m-d H:i'</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtotime</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$item</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'pubDate'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;/li&gt;&quot;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/ul&gt;</pre></div></div>

<p>Vi börjar helt enkelt med att instansiera ett Twitterobjekt och skickar med adressen till flödet samt hur många poster vi ska hämta, i detta fallet fem. Efter vi skapat objektet anropas funktionen <code>processFeed</code> som returnerar arrayen med twitterposter. Därefter kan vi iterera igenom de posten med <code>foreach</code>.</p>
<p>Eftersom datumet från Twitter se ut som följande, <code>Thu, 20 Aug 2009 10:23:23 +0000</code> använder jag funktionen <code>strtotime</code> för att göra om datumet till en timestamp. Därefter kan jag fomeratera det som jag vill med funktionen <code>date</code>.</p>
<p>Nu har vi alltså skapat en Twitter-klass som kan hämta ett visst antal poster, samt en webbsida där vi kan publicera twitterflödet. </p>
<p>I mitt demo har jag lagt på en stillmall för att snygga till flödet en aning. Denna CSS-fil ingår även när du laddar hem filerna.</p>
<h3>Resultat</h3>
<p><a href="http://www.baronen.org/baronen_demos/twitter_on_website/without_jquery/">Se Demo av resultatet så här långt.</a></p>
<h3>Snurra flödet med jQuery</h3>
<p>Jag tänkte visa hur man kan snurra posterna med hjälp av javascript och <a href="http://www.jquery.com">jquery</a>. Det jag tänkte fixa till nu är att endast visa två åt gången för att sedan animera posterna. <a href="http://www.baronen.org/baronen_demos/twitter_on_website/with_jquery/">Se demo</a>.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">  $<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> slideInterval <span style="color: #339933;">=</span> <span style="color: #CC0000;">3000</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> animationSpeed <span style="color: #339933;">=</span> <span style="color: #CC0000;">500</span><span style="color: #339933;">;</span>	
&nbsp;
	window.<span style="color: #660066;">setInterval</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	  	<span style="color: #003366; font-weight: bold;">var</span> firstItem <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#ul_list2 &gt; li:first '</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #003366; font-weight: bold;">var</span> itemHeight <span style="color: #339933;">=</span> firstItem.<span style="color: #660066;">height</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> 
				parseInt<span style="color: #009900;">&#40;</span>firstItem.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;paddingTop&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> 
				parseInt<span style="color: #009900;">&#40;</span>firstItem.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;paddingBottom&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span>
				parseInt<span style="color: #009900;">&#40;</span>firstItem.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;marginTop&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#ul_list2 &gt; li:first '</span><span style="color: #009900;">&#41;</span>
			.<span style="color: #660066;">animate</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
				marginTop<span style="color: #339933;">:</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">-</span>itemHeight <span style="color: #339933;">-</span> parseInt<span style="color: #009900;">&#40;</span>firstItem.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;marginBottom&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> animationSpeed<span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;linear&quot;</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#ul_list2 &gt; li:first '</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
				firstItem.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;marginTop&quot;</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#ul_list2'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">append</span><span style="color: #009900;">&#40;</span>firstItem<span style="color: #009900;">&#41;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> slideInterval<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Var tredje sekund animerar vi flödet uppåt. För att veta hur långt vi ska flytta det uppåt räknar vi ut höjden på en post inklusive <code>margin</code> och <code>padding</code>. Sen använder vi jQuerys <code>animate</code>. När väl animeringen är klar, tar vi bort det översta elementet, som alltså ligger utanför boxen och flyttar ner det längst ner i listan igen.</p>
<h3>Demo och källkod</h3>
<p>Nu har jag visat hur man hämtar Twitter-flöde med PHP och sedan snurra posterna med jQuery.</p>
<p><strong>Exempel utan javascript</strong><br />
<a href="http://www.baronen.org/baronen_demos/twitter_on_website/without_jquery/">Visa Demo</a> eller Ladda ner <a href="http://www.baronen.org/wp-content/uploads/2009/08/without_jquery_download.zip">källkoden här</a></p>
<p><strong>Exempel med javascript</strong><br />
<a href="http://www.baronen.org/baronen_demos/twitter_on_website/with_jquery/">Visa Demo</a> eller Ladda ner <a href="http://www.baronen.org/wp-content/uploads/2009/08/with_jquery_download.zip">källkoden här</a></p>


<p>Relaterade poster:<ol><li><a href='http://www.baronen.org/bing-och-twitter-slar-sig-ihop/' rel='bookmark' title='Permanent Link: Bing och Twitter slår sig ihop'>Bing och Twitter slår sig ihop</a> <small>Idag har det blivit officiellt att Bing och Twitter har...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.baronen.org/twitter-pa-din-webbplats-med-php-och-jquery/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Hängde in en 5a på javascripten</title>
		<link>http://www.baronen.org/hangde-in-en-5a-pa-javascripten/</link>
		<comments>http://www.baronen.org/hangde-in-en-5a-pa-javascripten/#comments</comments>
		<pubDate>Wed, 09 Apr 2008 21:06:16 +0000</pubDate>
		<dc:creator>Baronen</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Personligt]]></category>
		<category><![CDATA[Skola]]></category>

		<guid isPermaLink="false">http://www.baronen.org/?p=102</guid>
		<description><![CDATA[Som jag nämnt tidigare så har vi under de senaste veckorna haft ett sista projekt i javascriptkursen. Projektet gick ut på att skapa ett &#8220;skrivbord&#8221; med hjälp av javascript. Man kan öppna fönster, flytta och förstora, mitt innehåller också ett bildgalleri, en RSS-läsare och en &#8220;webbläsare&#8221;. Idag redovisade jag alltså detta och hängde in maxbetyg. [...]


Relaterade poster:<ol><li><a href='http://www.baronen.org/aspnet-och-databas-pa-schemat/' rel='bookmark' title='Permanent Link: ASP.Net och Databas på schemat'>ASP.Net och Databas på schemat</a> <small>Nu är det slut med internetteknik och javascript, iallafall på...</small></li>
<li><a href='http://www.baronen.org/mdi-och-webbprojekt/' rel='bookmark' title='Permanent Link: MDI och webbprojekt'>MDI och webbprojekt</a> <small>Tänkte skriva lite om läget i skolan just nu. Händer...</small></li>
<li><a href='http://www.baronen.org/webbskrivbord-i-javascript/' rel='bookmark' title='Permanent Link: Webbskrivbord i javascript'>Webbskrivbord i javascript</a> <small>Som rubriken antyder så är detta slutprojektet i javascriptkursen. Men...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Som jag nämnt tidigare så har vi under de senaste veckorna haft ett sista projekt i javascriptkursen. Projektet gick ut på att skapa ett &#8220;skrivbord&#8221; med hjälp av javascript. Man kan öppna fönster, flytta och förstora, mitt innehåller också ett bildgalleri, en RSS-läsare och en &#8220;webbläsare&#8221;.</p>
<p>Idag redovisade jag alltså detta och hängde in maxbetyg. Känns riktigt skönt, avvaktar nu bara resultatet från tentan. Kan tillägga att detta var helt klart det roligaste projekt vi haft, men visst, ibland har jag blivit riktigt frustrerad när saker inte fungerar jag vill. Men så är det väl med all programmering.</p>
<p>Slänger med lite skärmdumpar från mitt skrivbord också. Enjoy!</p>
<p><a href="http://www.baronen.org/wp-content/uploads/2008/04/1.jpg" style="border: none;"><img class="alignnone size-thumbnail wp-image-103" title="1" src="http://www.baronen.org/wp-content/uploads/2008/04/1-150x150.jpg" alt="Desktop Screen 1" width="100" height="75"  /></a><a href="http://www.baronen.org/wp-content/uploads/2008/04/2.jpg" style="border: none;"> <img class="alignnone size-thumbnail wp-image-104" title="2" src="http://www.baronen.org/wp-content/uploads/2008/04/2-150x150.jpg" alt="Dekstop Screen 2" width="100" height="75" /></a><a href="http://www.baronen.org/wp-content/uploads/2008/04/3.jpg" style="border: none;"> <img class="alignnone size-thumbnail wp-image-105" title="3" src="http://www.baronen.org/wp-content/uploads/2008/04/3-150x150.jpg" alt="Screen 3" width="100" height="75" /></a></p>


<p>Relaterade poster:<ol><li><a href='http://www.baronen.org/aspnet-och-databas-pa-schemat/' rel='bookmark' title='Permanent Link: ASP.Net och Databas på schemat'>ASP.Net och Databas på schemat</a> <small>Nu är det slut med internetteknik och javascript, iallafall på...</small></li>
<li><a href='http://www.baronen.org/mdi-och-webbprojekt/' rel='bookmark' title='Permanent Link: MDI och webbprojekt'>MDI och webbprojekt</a> <small>Tänkte skriva lite om läget i skolan just nu. Händer...</small></li>
<li><a href='http://www.baronen.org/webbskrivbord-i-javascript/' rel='bookmark' title='Permanent Link: Webbskrivbord i javascript'>Webbskrivbord i javascript</a> <small>Som rubriken antyder så är detta slutprojektet i javascriptkursen. Men...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.baronen.org/hangde-in-en-5a-pa-javascripten/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ASP.Net och Databas på schemat</title>
		<link>http://www.baronen.org/aspnet-och-databas-pa-schemat/</link>
		<comments>http://www.baronen.org/aspnet-och-databas-pa-schemat/#comments</comments>
		<pubDate>Thu, 03 Apr 2008 13:04:52 +0000</pubDate>
		<dc:creator>Baronen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Personligt]]></category>
		<category><![CDATA[Skola]]></category>

		<guid isPermaLink="false">http://www.baronen.org/aspnet-och-databas-pa-schemat/</guid>
		<description><![CDATA[Nu är det slut med internetteknik och javascript, iallafall på schemat. Efter denna kurs kommer jag faktiskt att använda javascript mer eller mindre på mina framtida sidor. Innan denna kurs har jag alltid varit mycket tveksam till användning av javascript på webbsidor men har nu fått ett mer öppet sinne.Hur schysst är det inte att [...]


Relaterade poster:<ol><li><a href='http://www.baronen.org/nu-borjar-det-handa-aspnet-och-databas/' rel='bookmark' title='Permanent Link: Nu börjar det hända, ASP.NET och Databas'>Nu börjar det hända, ASP.NET och Databas</a> <small>Det är egentligen nu det börjar hända grejer på webbprogrammering....</small></li>
<li><a href='http://www.baronen.org/lordagsnoje/' rel='bookmark' title='Permanent Link: Lördagsnöje'>Lördagsnöje</a> <small>Tänkte skriva lite om vad som händer i skolan i...</small></li>
<li><a href='http://www.baronen.org/webteknik-och-internetteknik-nya-kurser/' rel='bookmark' title='Permanent Link: Webteknik och Internetteknik &#8211; Nya kurser'>Webteknik och Internetteknik &#8211; Nya kurser</a> <small>Tiden på högkolan i Kalmar rullar på som vanligt. Under...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Nu är det slut med internetteknik och javascript, iallafall på schemat. Efter denna kurs kommer jag faktiskt att använda javascript mer eller mindre på mina framtida sidor. Innan denna kurs har jag alltid varit mycket tveksam till användning av javascript på webbsidor men har nu fått ett mer öppet sinne.Hur schysst är det inte att göra ett trevligt valideringsscript, eller ladda in innehåll asynkront med AJAX. Visst, det finns alltid en gräns hur mycket man ska använda saker.</p>
<p>Men ett citat som jag hörde i skolan va &#8220;<span class="body">If all you have is a hammer, everything looks like a nail.</span>&#8221; det passar ganska bra in kanske.</p>
<p>Såhär i slutet av javascriptkursen så måste jag säga att det va lätt den roligaste kursen vi haft hittils, ev den bästa också, konkurrerar lite med C# kursen också. Innan kursen började trodde jag att jag aldrig skulle kunna göra validering, lightbox, drag &#8216;n drop men men, underskattade mig själv lite. Har ett projekt kvar att redovisa sen tänkte jag lägga ut alla javascript applikationer på sidan.</p>
<p>Men nu är de över iallafall, med blandade känslor, iofs kommer väl javascript och AJAX fortsätta under året. I måndags började vi de nya kurserna som vi ska ha fram till slutet av maj. Kurserna är ASP.net och Databasteknik.</p>
<p><img src="http://www.baronen.org/wp-content/uploads/2008/04/asp2.gif" alt="asp2.gif" /></p>
<p>Det känns som dessa kurser kommer gå hand i hand, allt flyter ihop i ett projekt om ca 7 veckor. Vilket ska bli riktigt kul faktiskt, det är ju nu man får sätta ihop allt man har lärt sig under ett år.</p>
<p>ASP.net ska bli extra intressant eftersom jag inte ens kollat på det hittils. PHP har jag använt en del och känner mig inte helt vilsen. Men ASP.net är helt nytt, vid en första föreläsning visade läraren hur man skapar validering av ett formulär, man drog helt enkelt in en kontroll och klickade lite sen var det färdigt.</p>
<p>Själv har jag aldrig riktigt jobbat på de sättet så det kändes nästan som fusk. Visst det snabbar upp arbetet avsevärt men den där känslan av fusk när man drar in nåt och sen sköter programmet resten kommer förhoppningsvis försvinna. Men tror kursen kommer bli riktigt bra.</p>
<p>Den andra kursen är databasteknik där vi kommer gå igenom MS-SQL och MySQL. Hittils har det bara handlat om databasmodellering vilket jag kan känns är lite segt, vill gärna sätta mig och dra igång direkt med någor kreativt.</p>
<p>Men denna läsperiod kommer bli kul och också kanske lite tuff, men kommer lätt vara värt det.</p>


<p>Relaterade poster:<ol><li><a href='http://www.baronen.org/nu-borjar-det-handa-aspnet-och-databas/' rel='bookmark' title='Permanent Link: Nu börjar det hända, ASP.NET och Databas'>Nu börjar det hända, ASP.NET och Databas</a> <small>Det är egentligen nu det börjar hända grejer på webbprogrammering....</small></li>
<li><a href='http://www.baronen.org/lordagsnoje/' rel='bookmark' title='Permanent Link: Lördagsnöje'>Lördagsnöje</a> <small>Tänkte skriva lite om vad som händer i skolan i...</small></li>
<li><a href='http://www.baronen.org/webteknik-och-internetteknik-nya-kurser/' rel='bookmark' title='Permanent Link: Webteknik och Internetteknik &#8211; Nya kurser'>Webteknik och Internetteknik &#8211; Nya kurser</a> <small>Tiden på högkolan i Kalmar rullar på som vanligt. Under...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.baronen.org/aspnet-och-databas-pa-schemat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Webbskrivbord i javascript</title>
		<link>http://www.baronen.org/webbskrivbord-i-javascript/</link>
		<comments>http://www.baronen.org/webbskrivbord-i-javascript/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 12:13:33 +0000</pubDate>
		<dc:creator>Baronen</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Webbutveckling]]></category>

		<guid isPermaLink="false">http://www.baronen.org/webbskrivbord-i-javascript/</guid>
		<description><![CDATA[Som rubriken antyder så är detta slutprojektet i javascriptkursen. Men innan jag berättar om det så har jag lovat att visa den föregående laborationen som va att skriva ett formulärvalideringscript. Här kan du läsa mer om vad den labben gick ut på. Jag har denna gång valt att spela in en film på denna uppgift. [...]


Relaterade poster:<ol><li><a href='http://www.baronen.org/laboration-5-i-javascript-fardig/' rel='bookmark' title='Permanent Link: Laboration 5 i javascript färdig'>Laboration 5 i javascript färdig</a> <small>Har idag lyckats göra klart den femte laborationen i javacriptkursen....</small></li>
<li><a href='http://www.baronen.org/memory-och-shoppingvagn-i-javascript/' rel='bookmark' title='Permanent Link: Memory och Shoppingvagn i javascript'>Memory och Shoppingvagn i javascript</a> <small>Har idag redovisat laboration 4 i javascript-kursen nu. Överlag har...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p> Som rubriken antyder så är detta slutprojektet i javascriptkursen. Men innan jag berättar om det så  har jag lovat att visa den föregående laborationen som va att skriva ett formulärvalideringscript. <a href="http://www.baronen.org/laboration-5-i-javascript-fardig/">Här</a> kan du läsa mer om vad den labben gick ut på. Jag har denna gång valt att spela in en <a href="http://www.youtube.com/watch?v=Uz-0GRp0f_I" title="Javascript">film</a> på denna uppgift.</p>
<p><a href="http://www.youtube.com/watch?v=Uz-0GRp0f_I" title="Formulärvalidering">Formulärvalidering i javascript</a></p>
<p>Den sista laborationen är alltså att skriva ett eget &#8220;skrivbord&#8221; i javascript. Det ska helt enkelt fungera som ett skrivbord gör i tex Windows eller Linux. Det ska finnas ikoner, man ska kunna öppna nya fönster, förstora fönster, hämta data asynkront med AJAX. Denna uppgiften blir lite att bita i men också den roligaste, vi har ganska fira händer och utveckla som vi vill. Väldigt spännande.</p>
<p>Återkommer med mer information om detta.</p>
<p>Lite annat som har hänt att jag har införskaffat mig ett Nintendo Wii. Helt klart en annorlunda konsol.</p>
<p>Läs även andra bloggares åsikter om <a href="http://bloggar.se/om/Javascript" rel="tag">Javascript</a>, <a href="http://bloggar.se/om/validering" rel="tag">validering</a></p>


<p>Relaterade poster:<ol><li><a href='http://www.baronen.org/laboration-5-i-javascript-fardig/' rel='bookmark' title='Permanent Link: Laboration 5 i javascript färdig'>Laboration 5 i javascript färdig</a> <small>Har idag lyckats göra klart den femte laborationen i javacriptkursen....</small></li>
<li><a href='http://www.baronen.org/memory-och-shoppingvagn-i-javascript/' rel='bookmark' title='Permanent Link: Memory och Shoppingvagn i javascript'>Memory och Shoppingvagn i javascript</a> <small>Har idag redovisat laboration 4 i javascript-kursen nu. Överlag har...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.baronen.org/webbskrivbord-i-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
