Dagens absurditet: en nerds inssikt. Microsoft gjort en ologisk knapp där man stänger av Windows genom att klicka på Start. Nu har jag gjort en PHP-klass med den statiska metoden Login::logout('/');. Även du som inte kan PHP, kan du avgöra vad koden gör?
Absurditeter
9 mars, 2010Nya kursstarter på php-kursen
8 mars, 2010Glöm inte funktionerna i SQL
28 januari, 2010Ibland känner jag att man glömmer funktionerna i SQL (den tekniken vi använder för kommunicerar med databasen). I mycket litteratur och annat jag ser lär man sig SELECT, INSERT, UPDATE och sedan inte mycket mer. Alla operationer görs sedan i PHP-koden. Men till exempel MySQL har många inbyggda funktioner, som kan vara snabbare att använda och som sparar mycket kod.
Jag råkade här om dagen på ett inlägg av David Walsh, ”MySQL’s REPLACE is PHP’s STR_REPLACE()”, där han ersätter text med MySQLs gunktion istället för PHPs. Senast idag kunde jag använt en när jag flytta en Wordpress Mu blogg till en annan server och skulle ersätta alla sökvägar (men med backup först!)
1 | UPDATE mytable SET content = REPLACE(content,'kurswebben.se','phpkurs.se'); |
Rädda MySQL
16 januari, 2010Oracle köper Sun som äger MySQL. Behöver vi rädda MySQL? Man kan fråga sig vad Oracle har för intresse av att främja utveckling av MySQL. En webbplats har skapats tillägnad MySQLs fortlevnad, och där kan du skriva på en petition. Besannas farhågorna så kanske det är läge för PostgreSQL att växa.
Mer läsning om Oracle och MySQL:
Kod i Wordpress
14 januari, 2010Ibland lägger jag in kod i Wordpress-inläggen här på bloggen. För att göra en ruta, färga koden och ev fixa radnummer använder jag tillägget WP-Syntax, som i sin tur använder sig av GeSHI (Generic Syntax Highlighter). Enkelt och smidigt, man använder pre-taggen…
<pre lang="php"> koden </pre>
Så här kan PHP se ut:
1 2 3 4 5 | <?php function my_mirror($var) { echo strrev($var . ' bak o fram: ' . $var): } ?> |
Eller kanske lite Ruby
18 19 20 21 22 | class Example def example(arg1) return "Hello: " + arg1.to_s end end |
Språkstödet är omfattande.
Uttnyttja din PHP-editor fullt ut
12 januari, 2010Du har massor att vinna på att uttnyttja din PHP-editor fullt ut. Min favorit för tillfället är Quanta Plus på Linux och Eclipse PDT på Win/Mac. Quanta har fördelen att den gör mycket lagom avancerat. Snippets (återanvändbara kodsnuttar) sparas som simpla .txt-filer, vilket gör dem lätt att överföra till andra platser och program. Dokumentationen går att ladda hem som HTML-filer och spara i rätt mapp så finns den tillgänglig i programmet. Det går att fälla ihop kodstycken, hantera projekt, söka och ersätta etc. Att den även är snabb skadar förstås inte! För riktigt snabba ändringar brukar jag ha enklare texteditorer – t.ex. gEdit på Linux, Smultron på Mac och Notepad++ på Windows.
Tvinga en bild att laddas om
9 januari, 2010Jag jobbade här om dagen med bildbeskärning, och behövde tvinga en bild att laddas om istället för att hämtas från webbläsarens cache. De vanliga tricken med att sätta headers och meta-taggar användes i skriptet, men bilden ville ändå inte laddas om direkt. Lösningen är att lägga till ett slumpat tal som querystring i bildnamnet. För att enkelt få ut slumptal använder jag funktionen rand(). Kanske inte den snyggaste av lösningar, men den fungerar.
<img src="bild.jpg?<?php echo rand(1,3000); ?>" />
Webbläsaren noterar att det är annorlunda adress vid varje besök och laddar om bilden, men ignorerar delen efter ”?”.
Läs även andra bloggares åsikter om bildhantering, skript, php, cache
Ta ett extra steg med JQuery
9 december, 2009Som webutvecklare och PHP-kodare är det kanske funktionaliteten bakom man börjar planera, men du kan ta ett extra steg med JQuery och göra nya saker möjliga. JQuery är ett javascript bibliotek som underlättar design och AJAX-funktioner. För många saker finns plugins och du behöver ofta bara några rader kod för mycket funktionalitet. Kombinera det med dina PHP-skript så kan du göra mycket.
Jag har tidigare jobbat mycket med webbgallerier, bilduppladdning etc. och tycker därför många av JQuerys bildfunktionerna verkar intressant. Här om dagen arbetade jag kort med JCrop som är ett plugin för att beskära bilder. Det naturliga är förstås att sedan spara bilden man beskurit, men för mitt test valde jag att skriva ut den direkti webbläsaren. Prova gärna att beskära mina blåsippor
Mer exempel och instruktioner om hur du kan beskära bilder hittar du på JCrops hemsida.

Beskär bilder med JCrop
Överta andras kod
2 december, 2009Att överta andras kod är alltid en intressant uppgift. Vi tänker alla lite olika, har våra lösningar och egenheter. Du lär dig alltid något. Där finns alltid något att kämpa med, någon att svära över och någon aha-upplevelse. Det är ungefär som att lära känna människor.
Ett sätt är att börja där webbläsaren börjar och följa skriptets väg. Vad händer när index.php laddas? Följ ”stigen” och se vad som laddas, vilka funktioner som körs etc. Och hoppas på bra kommantarer
Testa dig med fizzbuzz
30 november, 2009Söker du jobb som webbprogrammerare – var beredd att testa dig med fizzbuzz. Visste du att många som söker programmeringsjobb inte kan koda alls? Kanske är det dags att börja posta lite utmaningar här
Ge mig ett svar på detta (via blogg eller kommentar):
- Gör ett skript som skriver ut talen 1 till 100.
- För varje tal delbart med 3 skriv ut ”fizz”.
- För varje tal delbart med 5 skriv ut ”buzz”.
- För varje heltal delbart med både 3 och 5 skriv ut ”fizzbuzz”.

Ny design banar vägen
18 november, 2009Du som varit inne här tidigare kanske noterar att vi har ny design. Den banar vägen för en hel del förändringar som dyker upp här varefter. Men först och främst ett ansiktslyft – jag hoppas det känns som en förbättring?

Dela kod online med Codepad
12 oktober, 2009Jag har hittat ett sätt att dela kod online, med Codepad.org – mycket bra om du snabbt vill visa för någon och få en kort adress. Min egen kodsnutt blev en kort bit från ett Wordpress-tema, där jag hämtar en loop med poster för en andra listning (t.ex. om man hämtar inlägg till två kolumner). Codepad kan ta flera tekniker – C, Ruby, C++, Perl, Python m.fl. Den naturligaste för mig är förstås PHP
Så här enkelt kan man dela kod online med Codepad. Jag fick förstås ett fel eftersom koden är tagen ur sitt sammanhang. En skärmdump…
Kod efter humör
10 oktober, 2009Jag använder alltid kommentarer och följer phpDoc , men till vis del formas kod efter humör. När jag är mer stressad och har mycket att tänka på är jag också mer benägen att dela upp koden med tydliga block skiljda åt av tomma rader och t.ex. /***************
Ett exempel:

Annars blir det mer kompakt. Egentligen tycker jag koden ska förklara sig själv men jag brukar följa upp med kommentarer i alla fall, dels för att följa phpDoc och kunna använda applikationen, men jag tycker också det är lite enklare att se koden i färgat skick om koden delas upp av kommentarernas färg. Det finns något för blicken att stanna upp vid.
Hur skriver du dina kommentarer?

Tips:
Sådana här saker är ett evigt diskussionsämne som kan rör upp oss nördar
Nedan hittar du några andras tankar om kommentering av koden. Söker du på forum eller Google Code Search hittar du säkert mycket mer.
Läsning
SQLite, databasen i PHP
8 oktober, 2009Den inbyggda SQLite databasen i PHP är ett bra alternativt när du vill göra något enklare – alla webbplatser kanske inte behöver MySQL. Med SQLite anger du en sökväg till databasen, och det är en bra idé att spara den någonstans som inte är tillgänglig för besökaren. Du behöver ingen användare speciellt för databasen utan detta sköts av filrättigheterna.
Jag håller på med en lektion om SQLite + PHP, men hittar en del bra länkar under tiden. Här är några:
Lista filer i en mapp med PHP
13 augusti, 2009Jag har återvänt till operativsystemet Ubuntu Linux med testserver på en laptop och ville ha en förstasida som enkelt listar filer i en mapp, men där jag också kan lägga till annat efter hand. Så jag satte ihop ett litet skript som listar mappar och filer. Inget märkvärdigt alls, men varför inte dela med sig även av det enkla?
För att få rätt sökväg så använder jag funktionen getcwd(), och sedan PHPs filfunktioner för att lista namnen. I skriptet sparar jag en array med mapparna och en array med filerna, som jag sedan loopar ut som HTML-lista. Det är dels för att få en enkel sortering, men också för att separera funktion och form. Det här går att göra mycket mer avancerat, med för mitt ändamål duger det för tillfället perfekt.
I filen finns PHP-skriptet samt CSS-filen. Jag har även använt ikoner från silkicons, men de får du ladda ner själv.
Ladda hem skriptet för att lista filer i en mapp
Som sagt så går det bygga ut detta simpla skript på många sätt, om du kollar filsystems-funktionerna i PHP-manualen får du säkert idéer till att göra mer än att lista filer i en mapp.
Jag passade förresten på att testa lite annorlunda färgschema i gEdit… rätt trevligt faktiskt.
Gamla priser – en dag kvar
31 juli, 2009Imorgon höjer vi priset – sista chansen att anmäla sig till gamla priser idag
Jag kan för övrigt tipsa om att vi har en grundkurs i Webbdesign på gång också, den kommer främst rikta sig till dig som behöver lära dig grundläggande HTML/CSS och hur man formger webbsidor. Det är en kunskap du bör ha innan du lär dig PHP. Den kommer gå med fasta datum och starten meddelas inom kort. Kan du inte hålla dig får du gärna gå med i vårt gratisnätverk för Webbdesign.
Sista chansen för gamla priser på PHP-kurs – 1 augusti gäller nya höstpriser
24 juli, 2009Du har nu sista chansen att hoppa på PHP-kursen (och de andra kurserna på Kurswebben.se) för de gamla priserna. Den 1 augusti höjer vi för höstsäsongen. Vi kommer även återuppta fasta kursstarter. Om en månad kan du skapa dynamiska hemsidor – häng på!
En ny community för webbdesign
5 juli, 2009Jag startade en community på Ning idag, webbdesign.ning.com, för utbyte av webbdesign-idéer
Välkommen att gå med. Inom kort kommer vi även starta en webbdesign-kurs på Kurswebben.
Vad vill du lära dig mer om inom PHP?
3 juli, 2009Om vi bortser från grunderna (som till exempel variabler, loopar och enklare databashantering), vad vill du lära dig mer av inom PHP? Det vore lite kul att få en lista på fördjupningar som önskas, kanske det dyker upp som artitklar här eller i vår Youtube-kanal – om inte som fördjupningar i kursen. Förfrågningar jag fått från nuvarande elever är:
- hur man fixar phpBB3
- mer om sqlite istället för bara MySQL
- mer fördjupning om array-variabler









