27. august 2001 - 14:32Der er
23 kommentarer og 1 løsning
En slags backup
Kan man ikke lave en slags backup hvor man skrivet noget tekst og nå man så klikker væk fra textarea så gemmer den teksten i en variabel (senere i en cookie)?
<SCRIPT LANGUAGE=\"JavaScript\">
var myvar; function backup() { myvar += document.test.testfelt.value } </script>
Der bliver investeret massivt i AI. Teknologien er mere tilgængelig end nogensinde, og ambitionerne er høje. Alligevel oplever mange virksomheder, at resultaterne udebliver.
=;-) Jamen, jeg ku\' jo ikke la\' vær\' -- du beskrev det jo fint nok !·]
Men først, du har lavet en ekstrem simpel \'backup\' -- hvad hvis brugeren bare lige fjerner et udråbstegn fra en 300 ord lang fristil ?-|
Det er et kompliceret problem, at løse, hvis det skal løses !
Men så skal du jo have skrevet og læst cookien, hvornår og hvorfor ? Er det fordi, du vil give brugeren mulighed for at genskabe -- og i hvilken sammenhæng (onLoad eller...). Hvor lang tid skal cookien så forblive aktiveret?
Og så skal vi jo lige have fat i en rigtig kagebager -- mine plejer at falde sammen
Det den skal gøre et at give brugeren mulighed for at gemme teksten midlertidig, hvis han/hun skriver en længere tekst, og han/hun så kvajer sig med feks at lukke browseren eller noget, så skal man have mulighed for at kunne \"åbne\" teksten ligesom man kan i word, altså en slags sikring for ikke erfarne bruger på nettet, og cookien skal bare gemmes en dags tid eller ligende
Jeg kastede mig lige ud på dybt (?) vand, jeg har ikke prøvet cookies for alvor, så prøv:
function setCookie(){ // if (!document.cookie){//til hvis du skal checke indhold inde overskrivning var exp = new Date(); exp.setTime(exp.getTime()+86400000); document.cookie=\"backup=myvar;expires=\"+exp.toGMTString; //} else {//se foroven }
function getCookie(){ if (document.cookie){ var oldVar = unescape(document.cookie.substring(7,document.cookie.length)); return oldVAr; }
Hvad er det gamt her ? <SCRIPT LANGUAGE=\"JavaScript\">
function setCookie(myvar){ var exp = new Date(); exp.setTime(exp.getTime()+86400000); document.cookie=\"backup=myvar;expires=\"+exp.toGMTString;
}
function getCookie(){ if (document.cookie){ var oldVar = unescape(document.cookie.substring(7,document.cookie.length)); //return oldVAr; alert(oldVar); } }
</script>
<form name=\"test\"> <textarea cols=\"40\" rows=\"20\" name=\"testfelt\"> Indhold af siden </textarea> </form>
document.cookie henter alle forekomster af cookies, som er knyttet til et domain, det kan være, at du skal parse din cookie lidt mere, for kun at få den sidste udgave:
var oldVar = unescape(document.cookie.substring(document.cookie.indexOf(\'backup\')+7,document.cookie.indexOf(\';\')-1));
hvis jeg skriver var oldVar = unescape(document.cookie.substring(document.cookie.indexOf(\'backup\')+document.cookie.length,document.cookie.indexOf(\'backup\')-1)); så kommer det kun \"backup= \" formeget hvor dan fjerner man det?
de +7 er \'backup=\' 7 tegn, som skal overses, -1 er fordi vi ikke har lyst til at have \';\' med
Jeg...øeh, der må sku\' debugges lidt mer: function getCookie(){ if (document.cookie){ var strt = document.cookie.indexOf(\'backup\')+7; var slut = document.cookie.indexOf(\';\')-1; alert(unescape(document.cookie)+\'\\nStart: \'+strt+\' - Slut: \'+slut); var oldVar = unescape(document.cookie.substring(7,document.cookie.length)); //return oldVAr; alert(oldVar); } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.