Cookienamen und Wert in Funktion

<script type="text/javascript">
var expDays = 30;
var exp = new Date(); 
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
function savecookie(cookiename,cookievalue) {
SetCookie (cookiename, cookievalue, exp);
    document.getElementById('info2').innerHTML = cookiename;
    document.getElementById('info3').innerHTML = cookievalue;
}
var cookie_auslesen = GetCookie('username');
if (cookie_auslesen == null) {
    document.getElementById('info1').innerHTML = 'kein Cookie vorhanden';
} else {
    document.getElementById('info1').innerHTML = cookie_auslesen;
}
</script>
<div id="info1">Info 1 - leer</div><br>
<div id="info2">Info 2 - leer</div><br>
<div id="info3">Info 3 - leer</div><br>

<button onclick="savecookie('username','Durek');">Klicke Hier zum Cookie speichern</button>

ich hatte es einfach mal als Code geschrieben, so wie ich es dachte…allerdings klappt dieses Script nicht… ich habe JavaScript aktiviert und es lokal mit meinem Firefox aufgerufen.
Ich will halt in einer Funktion einen Cookie speichern lassen, wobei ich immer angeben kann, welchen Namen der Cookie trägt und welchen Wert er hat.
Der Rest dient eigentlich nur zum Test…

Wo hast du denn setcookie und getcookie definiert?

achja… is ja nciht so einfach, wie bei PHP^^

function getCookieVal (offset) { 
var endstr = document.cookie.indexOf (";", offset); 
if (endstr == -1) 
endstr = document.cookie.length; 
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) { 
var arg = name + "="; 
var alen = arg.length; 
var clen = document.cookie.length; 
var i = 0; 
while (i < clen) { 
var j = i + alen; 
if (document.cookie.substring(i, j) == arg) 
return getCookieVal (j); 
i = document.cookie.indexOf(" ", i) + 1; 
if (i == 0) break; 
} 
return null;
}
function SetCookie (name, value) { 
var argv = SetCookie.arguments; 
var argc = SetCookie.arguments.length; 
var expires = (argc > 2) ? argv[2] : null; 
var path = (argc > 3) ? argv[3] : null; 
var domain = (argc > 4) ? argv[4] : null; 
var secure = (argc > 5) ? argv[5] : false; 
document.cookie = name + "=" + escape (value) + 
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 
((path == null) ? "" : ("; path=" + path)) + 
((domain == null) ? "" : ("; domain=" + domain)) + 
((secure == true) ? "; secure" : "");
}

ändert aber nur, dass Infofeld 1 und Infofeld 2 bei Klick gefüllt werden. Der Cookie selber wird nciht ausgelsen (daher weiß icha uch nciht, ob er wenigstens gespeichert wurde)