Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/mu-plugins/gkphp.php on line 1
Javascript « Categories « Daniel Liljeberg

Arkiv för ‘Javascript’ kategori

Warning: Use of undefined constant archives - assumed 'archives' (this will throw an Error in a future version of PHP) in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32

Warning: Use of undefined constant page - assumed 'page' (this will throw an Error in a future version of PHP) in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32

Warning: A non-numeric value encountered in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32

Warning: A non-numeric value encountered in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32
class="post-198 post type-post status-publish format-standard hentry category-eclipse category-javascript category-php category-sql category-subversion category-video category-zend-framework">

Förslag till en samling tutorials

30 maj, 2011

Jag har funderat lite på vad man skulle kunna göra en tutorial/kurs om. Det finns ju otroligt mycket bra information på nätet redan och även om detta mest hade varit en kul liten grej så hade det varit roligt om någon lärde sig något på samma gång. Jag tror att jag kommer rikta in mig på en webapplikation av enklare slag skriven i PHP. Med enklare menar jag då, inte som omfattande. Vi skall fortfarande använda oss av abstrakta databaslager, AJAX och annat trevligt. Mycket då det saknas en del bra information för den svenska publiken om PHP men också för att det händer mycket med språket. Det möjliggör också för många att testa på det då alla delar vi kommer använda oss av kommer vara gratis (eller ha en free trial) utan att bli beroende av tredjepartslösningar som exempelvis Mono om man nu sitter i exempelvis Linux. Jag är dock inte partisk utan kan mycket väl se att vi i ett senare skede gör om exakt samam applikation i .Net för att se likheter och skillnader.

Jag tänkte försöka utgå ifrån att inte förvänta mig en massa kunskap av de som tar del av materialet. Men naturligtvis så kommer det att hjälpa om man utvecklat tidigare då jag endast kort kommer gå igenom grunder och sedan gå in på lite mera avancerade områden. Jag tänker mig följande upplägg

  1. Sätta upp lokala utvecklingsverktyg och saker att tänka på (OS, IDE, användbara plugins etc)
  2. Sätta upp server (utvecklingsstack, databas, versions hantering etc)
  3. Lite kort om PHP, karakteristiska saker med språket. Styrkor och svagheter etc.
  4. Ett antal enklare mindre program som visar lite på olika sätt att koda under PHP (och många andra språk också)
  5. Enklare introduktion till OOP och hur PHP hanterar detta.
  6. Introduktion till Zend Framework
  7. Introduktion av MVC mönstret

Sedan börjar vi knacka på vår lilla applikation och börjar då titta på hur Zend Framework hanterar views etc. Sedan går vi in på användarhantering, åtkomstkontroll, osv.

Detta är bara en idé om punkter att ta upp och jag tror att det hela, dynamisk, växer fram med tiden. Finns det några idéer eller önskemål så kom gärna med förslag.

Flattr this!

Warning: Use of undefined constant archives - assumed 'archives' (this will throw an Error in a future version of PHP) in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32

Warning: Use of undefined constant page - assumed 'page' (this will throw an Error in a future version of PHP) in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32

Warning: A non-numeric value encountered in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32

Warning: A non-numeric value encountered in /www/webvol34/an/96qmbdpibm1sspm/danielliljeberg.se/public_html/blog/wp-content/themes/cordobo-green-park-2/archive.php on line 32
class="post-41 post type-post status-publish format-standard hentry category-javascript">

Klickbar mailto länk utan att få skräpmail från spambots

28 augusti, 2009

Borta är dagarna då en publik hemsida utan att bry sig om otrevliga konsekvenser kunde ha en mailto länk som kontaktväg. Spambots som crawlar websiter, samlar in mailadresser och skickar spam till dessa har gjort att folk fått börja tänka på alternativa sätt att förmedla sin mailadress. En del ersätter möjligheten med ett kontaktformulär och kör captcha validering för att undvika att botar fyller i formuläret. Andra lägger helt enkelt in en bild med texten för mailadressen istället. Det finns flera lösningar på “problemet” men det alla dessa har gemensamt är att de försvårar. Inte bara för en spambot utan även för vanliga användare som faktiskt vill komma i kontakt med ert företag eller dig som person. Antingen måste de spendera tid med att fylla i ett formulär och försöka tyda en captcha som oftast är allt annat än lätt tolkad. Eller så måste de skriva av din mailadress ifrån en bild. Båda dessa försvårar och drar ner helhetsintrycket av användarens besök på din site. Tänk om man kunde ha en klickbar mailto länk utan att vara rädd för att spambotarna snor den och skickar skräpmail i sådana mängder att den enklaste lösningen till sist blir att byta företagsnamn och domänadress.

Självklart finns det sådana möjligheter. För att inte kräva något extra från användaren så brukar jag själv använda mig av javascript för att klara av detta. Det är faktiskt extremt enkelt och gör att länken utåt mot användaren fungerar precis som vanligt. Men en bot har mycket svårare att tyda den. Observera att OM boten vet vad den letar efter så kan de crawla även detta.För att göra det så jobbigt som möjligt så gör man därför klokt i att inte lägga koden direkt i länken som i exemplet nedan utan i en funktion i en javascript fil. Sedan förhindrar man direkt åtkomst till dessa via sin .htaccess fil så att folk inte direkt kan ladda den och titta efter lösningen där.

För att få en “säker” mailto länk the quick and dirty way så gör du följande

<a href="#" onclick="var username='foo'; var domain='bar'; var countrycode='se'; this.href='m'+'a'+'i'+'l'+'t'+'o:'+username+'@'+domain+'.'+countrycode;">Skicka mail genom att klicka här!</a>

Istället för “Skicka mail genom att klicka här!” kan man självklart ha sin mailadress, men då blir det lite för lätt att plocka ut den. Via detta kommer man iaf inte att kunna göra på det “enkla” sättet, vilket ofta är att crawla en site för just “mailto:” och extrahera mailadressen därefter. Skulle man göra detta här skulle man inte få ut något som gick att använda för att skicka spm till dig iaf.

Om man, som jag nämde innan vill vara ännu säkrare så gör man följande

"]// Function placed in js filefunction getFooMailLink(linkelement) {  var username = 'foo';  var domain = 'bar';  var countrycode = 'se'  linkelement.href='m'+'a'+'i'+'l'+'t'+'o:'+username+'@'+domain+'.'+contrycode;}

På html sidan skriver du sedan bara

<a href="#" onclick="getFooMailLink(this)">Skicka mail genom att klicka här!</a>

Nu kommer enkelheten hos mailto länkarna att finnas till hands för era besökare men ni slipper de jobbiga “överraskningarna” som är associerade med att använda dem. Det finns säkerligen en hel del andra lösningar också på detta så dela gärna med er.

Flattr this!