» Statistikk
» Logg inn
20 av verdens slangearter har dødelig bitt.
Siste innlegg i Nerdvar-tloggen:
Tema: Diverse; sjanger: Prosjekter
Skrevet av Stigma den 18. juni 2009 kl 15:21:52; Permanent lenke; Kommentarer: 2
nerdMail v1.0.1 - mailclass with attachments
Ettersom jeg ved gjentatte ganger har måtte sende epost med mine PHP-skripts, så bestemte jeg meg til slutt for å skrive en klasse for å gjøre hverdagen enklere. Jeg skrev den i hovedsak for å selv spare tid, men jeg tenkte også på andre da jeg skrev klassen; at den er brukervennlig. Klassen er ikke kun for å sende vanlige tekstepost, du kan også sende eposten som html, eller sende både en tekst- og htmlversjon. Den har også støtte for alle typer vedlegg, flere mottakere (også cc og bcc), en kraftig emailverifisering, anti-injectionfunksjon og det er enkelt å legge til/modifisere headere i eposten.
Etter å ha blitt fornøyd med førsteutkastet, så spurte jeg om tilbakemelding på Norsk Webforum. Der fikk jeg god konstruktiv kritikk og etter flere endringer virket det som koden er stabil og brukerne fornøyde. Så da lanserte jeg den som versjon 1.0.
Trykk her for å se kildekoden
Trykk her for å laste ned kildekoden (zip)
Alle har lov til å bruke den til hva dere vil uten å gi meg creds, men dere har ikke lov til å oppgi koden som egen. Det betyr at den er OpenSource, at dere kan bruke den i alle slags prosjekter og hva en nå dere måtte ønske å benytte den til. Unntaket er at dere ikke har lov til å si at dere skrev den originale klassen (blir litt drøyt å kalle det kjernen) og dere har ikke lov til å selge koden individuelt. Altså dere kan selge systemer som benytter klassen, men å selge selve klassen som et eget produkt er forbudt.
Ved å bruke koden godtar du at jeg ikke tar noe ansvar for og gir ingen garanti for andres eller egen bruk av koden. Jeg tar ikke på meg noe ansvar og skal ikke bli beskyldt om koden på et mystisk vis skal skape noen form for skade, feilmeldinger eller om den simpelthen ikke virker. Dette sier jeg ikke fordi koden er farlig, men kun for å fraskrive meg alt ansvar.
Hent inn klassen og sett standard variabler
require_once("mail_class.php");
$mail = new nerdMail;
$mail->subject = "The New PHP Mail"; // Meldingens emne, ikke obligatorisk
$mail->sender = "Nerdvar
$mail->returnPath = "bounce@nerdvar.com"; // Ikke obligatorisk, lurt for å ikke bli kategorisert som spam
Legg til mottakere
$mail->addMail("to", "enfyr@domene.com"); // Vanlig mottaker
$mail->addMail("to", "enannenfyr@domene.com", true); // Enda en mottaker med epostverifisering, returnerer false om ugyldig
$mail->addMail("cc", "kopi@domene.com"); // Legg til en kopimottaker
$mail->addMail("bcc", "blindkopi@domene.com", true); // Verifiser epost og legg til en blindkopimottaker, returnerer false om ugyldig
Definer epost body (meldingen), html eller text må defineres (kan også være begge).
$mail->text = "Hei\n\nAt du ser dette betyr at din epostklient ikke støtter eller har deaktivert html. Det var synd!\n\nJaja, du får ihvertfall eposten i klartekst og kanskje en link til online-versjon\n\nHils!";
$mail->html = "Din klient støtter HTML! Her kan du legge inn alle mulige HTML-koder...";
Legg ved noen vedlegg (attachments) og endre noen headere:
$mail->attach("mockup.jpg", "image/jpeg");
$mail->attach("http://no.php.net/images/php.gif", "image/gif");
$mail->attach("myapp/readme.txt"); // Om du ikke definerer metatype (filtype) blir den satt til application/octet-stream
$mail->attach("myapp/readmetoo.txt", "text/plain", BIT7); // Om du ønsker BIT7-enkoding på attachment istede for base64, unormalt
/* Har valgt å bruke url istede for noe annet, da fungerer den på både å legge til nyopplasta filer og eksisterene filer */
//Modifiser noen headere
$mail->addHeader("Message-Id", "kodenr@mittdomene.com");
$mail->addHeader("List-Unsubscribe:
/* Denne funskjonen vil også overskrive de standard headerne som blir satt av klassen om du definerer de med addHeader
Standard definerte headere er: mime-version, content-type, from, reply-to, cc, bcc, to (De fem siste blir satt av tidligere nevnte funskjoner) */
Send eposten:
$mail->send(); // Returnerer true / false
Tilleggsfunksjoner
$mail->parseMail($email);
/* Kan også brukes slik nerdMail::parseMail($email) (om du ikke har satt $mail)
Den tar både "dittnavn@domene.no" og "Ditt Navn
$mail->antiInjection($field);
/* De som har erfaring med å sende mail fra PHP vet at det er en fare ved iputfelter som
inkluderes i mailen. Om man ikke sjekker dette kan andre bruke ditt simple epostskjema til
å spamme andre. Denne funskjonen sjekker om noen prøver dette. Burde settes på
input subject, input eposter og evt. input headerinformasjon. Kan også brukes
slik: nerdMail::antiInjection($email) (om du ikke har satt $mail)
Gir true hvis injectionforsøk blir oppdaget */
Tema: Programvare; sjanger: Artikler
Skrevet av Stigma den 16. mai 2009 kl 19:06:44; Permanent lenke; Kommentarer: 2
På jobben satt jeg opp en lokal server for noen uker siden. Nylig ble jeg nødt til å konfigurere den for virtuelle servere (flere apachesider på en tjener), da snakka jeg med noen av linuxekspertene på jobben. Og ut i fra det kom jeg opp med denne guiden. Dette har jeg testet på CentOS (lokal jobbserver) og Mandriva (nerdvar). Ser ingen grunn til at det ikke skal virke på andre linuxdistribusjoner, dog muligens andre mappebaner.
Først må du logge inn som root, enten via et grafisk miljø eller shell. Deretter må du navigere deg til mappen /etc/httpd/conf.d. Her må vi lage en ny tekstfil. Denne kun av sikkerhetsårsaker, og siden apache lister de virtuelle tjenerene alfabetisk MÅ denne være først. Derfor lagrer vi denne som 01.conf. Den må inneholde:
# Set up empty virtual host so that original content doesn't change
NameVirtualHost *:80
Som sagt er sikkerhet grunnen til denne filen må eksistere. Hvis ikke vil alle filene i root-mappa bli lista om en forsøker å koble til en virtuell server som ikke eksisterer på tjeneren. Navnet 01 er viktig for at den skal leses først av de virtuelle tjenerne. Apache fungerer slik at den velger den første tilgjengelige virtuelle tjeneren om man prøver å koble til en ikke-eksisterende virtuell server. Det denne filen gjør er istede å vise webroot (/var/www/html).
Så kan vi sette opp våre virtuelle servere som individuelle .conf-filer i samme mappe. Slik kan feks. example.com.conf se ut:
LogFormat "%h %v %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%{Cookie}i\""
ServerName www.example.com
ServerAlias example.com vvv.example.com
DocumentRoot /home/user/html
ErrorLog logs/examplecom-error_log
CustomLog logs/examplecom-access_log
Options FollowSymLinks -Indexes
AllowOverride None
Order allow,deny
Allow from all
DocumentRoot og Directory må selvfølgelig være den samme mappen. Det første den gjør er å definere den virtuelle tjeneren for å så sette konfigruasjonen. Dette blir mappen det virtuelle domenet linker til (webrootmappen). Linje 1, 8 og 9 er for at feilmeldingen skal logges i en individuel fil for den virtuelle tjeneren. Disse kan tas bort om en ønsker at feilmeldingene skal logges i den vanlige errorloggen.
Etter de forskjellige .conf-filene er lagret må vi restarte apache. For å sjekke at det ikke er noen feil i conf-filene kan en kjøre /etc/init.d/httpd configtest først. Deretter er det bare å kjøpe domenet example.com og linke det til din servers ip-adresse. Det er viktig at domenet er det samme som i conf-fila. En kan også teste det fra en maskin ved å endre hosts-fila. I Windows XP finner du den her: C:/WINDOWS/system32/drivers/etc. La den se ca. slik ut:
127.0.0.1 localhost
example.com www.example.com
Lagre fila, omstart nettleseren og skriv inn example.com i adressefeltet. Og that's it! Denne hostsfila kan være morsom å bruke for å feks. lure venner til å tro at sider som feks. Facebook er blitt hacka ved å sette IPen til feks. Nerdvar ;).
Lykke til!
Tema: Vitenskap; sjanger: Artikler
Skrevet av Andreas den 14. mai 2009 kl 16:06:50; Permanent lenke; Kommentarer: 0
De to romteleskopene tok av i en Ariane-5-rakett fra Fransk Guyana ved 15:30-tiden i dag og har nettopp skilt lag i rommet som planlagt. Begge vil bli plassert i bane rundt lagrangepunkt 2, som er i skyggen av jorda i en avstand på ca 1,5·109 m. De vil være framme om 2 måneder, Herschel først.
Les mer på esa.eu
Tema: Internett; sjanger: Tullprat
Skrevet av Andreas den 23. februar 2009 kl 17:32:06; Permanent lenke; Kommentarer: 0
Gikk du glipp av talen til Richard Stallman 23/2 2009 i Oslo? Jeg gjorde et opptak av NUUGs videostrøm og lagret det her:
media/Stallman_Oslo_23feb2009.ogv (740 MB, Ogg Theora+Vorbis, ca 3 timer) Vær tålmodig, vi har treig linje.
Her er noen utvalgte og glimt fra videoen, klikk for større bilde:

Tema: Internett; sjanger: Artikler
Skrevet av Andreas den 13. januar 2009 kl 00:25:32; Permanent lenke; Kommentarer: 4
Trykk på bildet for å se en film som viser prosedyren (12,6 MB Ogg Theora uten lyd). Opptaket er gjort med recordmydesktop.

<a href="NRKnettTVhvordan.ogv"><img src="NRKnettTVhvordan_500.jpg" width="500" height="371"/></a>
<div style="width:500px; height:371px;">
<video>
<source src="NRKnettTVhvordan.ogv" type="video/ogg; codecs="theora, vorbis""/>
</video>
</div>
Heldigvis begynner NRK å merke at Windows Media Video var et dårlig valg av videoformat. Var det ikke det vi visste? Jeg håper NRK gjør som meg, følger regjeringen og legger ut video i Ogg Theora. Det som derimot filmen min viser, er at måten den settes inn på nettsiden kan være vel så viktig for brukeropplevelsen.
Tema: Diverse; sjanger: Tullprat
Skrevet av Andreas den 06. januar 2009 kl 18:22:26; Permanent lenke; Kommentarer: 0

Fredsbygging handler om å rive murer, bygge broer og grave tuneller. Dette ble ettertrykkelig demonstrert 9. november 1989 med rivingen av Berlinmuren. Rivingen var nødvendig for avslutningen av den kalde krigen. Ulikt Øst-Tyskland, som murte seg selv inne, er palestinerne på Gaza-stripen murt inne av Israel. Situasjonen minner kanskje mer om sør-afrikansk apartheid.
Til Israels forsvar nevnes det at "Terrorgruppen Hamas bruker sivilbefolkningen som skjold" og "Israel har rett til å forsvare seg". Men så er det vel slik at terrorister, geriljakrigere o.l. ofte ER mer eller mindre sivile helter som gjør sitt beste for folket. Kan de beskyldes for det? Begge parter kan i alle fall beskyldes for unødvendig bruk av makt og å provosere motparten som om det var for krigens egen skyld. At det har vært krig i Israel siden homo sapiens vandret ut av Afrika og inn i midtøsten for kanskje noe sånt som 100 000 år siden er en sannhet med få modifikasjoner. Hvis ikke partene kan slutte å unngjelde, vil de måtte holde på til det ikke er flere øyne og tenner igjen.
Tema: Programvare; sjanger: Meninger
Skrevet av Andreas den 09. desember 2008 kl 22:11:07; Permanent lenke; Kommentarer: 0
Hvilket dataprogram er det som lar deg reise hvor som helst i hele universet? Som simulerer universet i sanntid, fortid og framtid med realistiske 3D-modeller som er til å ta på? Og som attpåtil er fri (som fuglen) programvare med åpen kildekode. Celestia er obligatorisk for alle som er interessert i vårt kjære verdensrom. Det fungerer på Windows, Linux og Mac. Derimot er det en fordel å ha fungerende grafikkakselerasjon.
Celestia er under utvikling, og har en hærskare av entusiastiske brukere. Se mer:
Tema: Programvare; sjanger: Meninger
Skrevet av Andreas den 17. november 2008 kl 23:03:30; Permanent lenke; Kommentarer: 0
I dag slapp Adobe en 64-bitsutgave av Adobe Flash Player. Foreløpig kun for Linux og Solaris, og fortsatt på alfastadiet. Det skjedde ikke en plancktid for tidlig, dette er en bønn som vi Linux-brukere har mast kraftig om de siste 2-3 årene. I denne perioden har mangelen på en 64-bitsutgave vært et gjennomgangstema som har druknet det meste av annen kritikk fra Linux-hold, noe kommentarene på utviklerbloggen, vitner om.
Jeg måtte selvsagt prøve den straks med min Firefox 3.0.2, og kunne konstatere at:
Jeg må innrømme at med de fordommene jeg har opparbeidet meg mot Adobe, kom nyheten som litt av en overraskelse. Senest i går lykkes jeg faktisk i et desperat forsøk på å sette sammen min egen 64-bitsversjon av det fordømte programmet vha elftoc og gcc. Det ble altså et 64-bitsprogram, men det funka selvfølgelig ikke, det skal ikke være så lett. Jeg er glad jeg slipper å tenke på dette mer.
Tro ikke at problemet har vært noen bagatell. For det første kan det være vanskelig nok å få 32-bitsprogrammet til å funke, selv for Linus Thorvalds, jeg har heller ikke klart det. For det andre er det såpass mange internettsider som forventer at man har denne ufrie 32-bits-programvaren, at det ikke er til å stikke under teppet og glemme. Man minnes på det hele tiden og man føler seg enten handikappet eller utstøtt av samfunnet. For det tredje er Adobe Flash Player det siste hinderet for mange Linux-brukere, ikke bare mot bruken av 64-bits-operativsystemer, men også den generelle programvarefriheten som vi Linux-brukere gjerne er tilhengere av (jeg har for eksempel bare 3 ufrie programmer på min bærbare datamaskin, nemlig bios, skjermkortdriver og nå Adobe Flash Player). Selv om det for andre operativsystemer kan være flere grunner til å holde seg til 32 bit en stund til, er det altså ikke det for Linux.
Tro ikke at problemet er løst. Problemet er egentlig at Flash-teknologien er ufri: Bare Adobe kan fikse den, ingen andre er i nærheten av å lage noe kompatibelt, og Adobe vil aldri klare på egenhånd den umulige oppgaven å gjøre den tilgjengelig for alle. Som standard er den altså helt uakseptabel. Like uakseptabelt er det å tvinge/forvente av folk å bruke akkurat Adobes produkt ved å knytte det til egne tjenester. På lang sikt vil bare åpne standarder få markedsaksept. Adobe står bak suksessrike åpne standarder som postscript og PDF, hvis Flash skal nå samme status uten å dø som en flopp, finnes det bare én vei å gå.
Tema: Programvare; sjanger: Meninger
Skrevet av Andreas den 06. november 2008 kl 21:00:42; Permanent lenke; Kommentarer: 0
Pakkehåndterere er noe de aller fleste brukere av Linux må forholde seg til. Disse programmene lever i sin egen verden, som er nokså forskjellig fra den virkelige. Som regel har hver Linux-distribusjon sin egen pakkehåndterer, de fleste er basert på et av 2 pakkeformat: RPM og DEB. Alternativet til å bruke pakkehåndterer er å laste ned og installere ting manuelt. Det er mange grunner til at dette ofte er vanskeligere på Linux enn Windows. Derfor vil man helst bruke pakkehåndtereren, bortsett fra noen ganger når man har helt spesielle normale behov. I praksis er distribusjonene som monoteistiske religioner: "du skal ikke ha andre pakkebrønner enn meg", og pakkehåndterere er som forrige president i USA: "enten er du med oss eller så er du mot oss". Å installere fra andre kilder straffer seg i form av pakkekonflikter. Det er jo ikke uvilje, bare en teknisk utfordring som er problemet. Men når systemet gir opp, og man begynner å lure på hvor dum det går an for en pakkehåndterer å bli, da er det dårlig menneske-maskin-interaksjon at disse programmene ikke gir mulighet for brukeren til å hjelpe, i det minste til å ta riktige beslutninger. For eksempel nytter det ikke å fortelle at en fil faktisk ligger på harddisken hvis pakkedatabasen sier at den ikke gjør det. Med forbehold om at noen pakkehåndterere er smartere enn andre, og at noen kan overstyres mer enn andre, vil jeg påstå at tendensen er representativ for alle pakkehåndterere jeg har prøvd.
Pakkehåndterere tror at
package libraw1394-2.0.0-2.fc10.x86_64 (which is newer than libraw1394-1.3.0-7.fc9.i386) is already installed
file /usr/share/man/man1/dumpiso.1.gz from install of libraw1394-1.3.0-7.fc9.i386 conflicts with file from package libraw1394-2.0.0-2.fc10.x86_64
file /usr/share/man/man1/sendiso.1.gz from install of libraw1394-1.3.0-7.fc9.i386 conflicts with file from package libraw1394-2.0.0-2.fc10.x86_64
file /usr/share/man/man1/testlibraw.1.gz from install of libraw1394-1.3.0-7.fc9.i386 conflicts with file from package libraw1394-2.0.0-2.fc10.x86_64
file /usr/share/man/man5/isodump.5.gz from install of libraw1394-1.3.0-7.fc9.i386 conflicts with file from package libraw1394-2.0.0-2.fc10.x86_64
rpm -e --justdb --nodeps libraw1394-2.0.0-2.fc10.x86_64
Dette fjerner libraw1394-2.0.0 fra rpm-databasen, slik at de aktuelle filene nå kunne overskrives med libraw1394-1.3.0 i et nytt (og denne gang vellykket) forsøk på å oppdatere KDE. Det er et tankekors at disse systemfilene som liksom var så viktige bare ble overskrevet automatisk uten at jeg fikk vite det en gang nå som de ikke var oppført i rpm-databasen. At de stod i rpm-databasen kommer av at jeg har brukt en rpm-basert pakkehåndterer til å installere dem, det hadde de ikke gjort hvis jeg installerte dem manuelt. Hvem sier at filene til pakkehåndtereren er viktigere enn mine filer?
Tema: Diverse; sjanger: Meninger
Skrevet av Stigma den 01. august 2008 kl 20:34:26; Permanent lenke; Kommentarer: 0
De som kjenner meg godt vet hvor glad jeg er i animasjonsserien "The Simpsons" og etter flere år som fan, bestemte jeg meg for å kjøpe sesongene. Ideen fikk jeg fra noen år tilbake, da Elkjøp annonserte et tilbud. Mener å huske at det var sesong 1 til 7 for ca. 1500 NOK. I dag (01.08.08) er det gitt ut 10 sesonger i Norge, nummer 11 ventes å komme i oktober. Jeg gikk på jakt for å finne den billigste prisen for disse totalt 39 DVDene, og det jeg fant var sjokkerende. En massiv prisforskjell og at selveste Kelkoo ikke er noe å stole på!
Jeg valgte å se på nettsidene til disse tre forhandlerne: Platekompaniet, CDON.COM, Lefdal og dvdhuset. Jeg tok også en titt hos Kelkoo for så finne ut hva de mener er billigst.
Platekompaniet hadde alle DVDene til kr. 3220 pluss kr. 30 i frakt
CDON.COM manglet sesong 5 og 7, men totalt for alle de andre var kr. 2173, fri frakt
Lefdal hadde alle DVDene og ble BEST I TEST med kr. 150 pr. sesong og gratis frakt, altså kr. 1500!
dvdhuset.no hadde alle DVDene, men taper denne testen. Prisen ble kr. 4290, pluss kr. 42 i frakt. Det lukter vondt på lang vei!
Som sagt så sjekka jeg også ut Kelkoo, siden som søker gjennom en haug av nettbutikker etter varen du ønsker, og som viser deg hva som er billigst. Kelkoo har fått et godt rykte på seg, men i dag skuffet de meg. For det første så fant den ikke halvparten (nr. 3, 4, 7, 8, og 9) av sesongene i det hele tatt, og prisen på de gjenværende (hvor jeg valgte billigste alternativ) ble kr. 1639! Enda en nedtur er at de sesongene den fant var for det meste fra forskjellige butikker, med frakt, og noen av boksene var feil region (funker ikke på alle norske spillere og mangler norsk undertekst)!
Poenget med denne artikkelen er å få leserne til å åpne øynene. Kun ved å sjekke noen flere nettsteder, så kan en spare masse! I dette tilfellet, hele 2790,- (billigst i forhold til dyrest)! Og det er ikke kun DVDer, eller samlekolleksjoner dette gjelder. Det gjelder alt! Sjekk feks. ut finn.no, der kan du finne eksklusive varer som gis bort gratis! Det første er ikke alltid det beste, og fort er gæli!