<script language="JavaScript"> function Check() { if (document.post.navn.value == "") { alert("Du skal skrive dit navn"); return false; } if (document.post.overskrift.value == "") { alert("Du skal skrive en overskrift"); return false; } if (document.post.besked.value == "") { alert("Du skal skrive en besked"); return false; }
if(document.getElementById('navn').value.toLowerCase().indexOf('admin') > -1) { var password = prompt("Adgangskode:", ""); if (password == "---") { var login = "rigtig"; } else { alert("Forkert password - Du kan kun kalde dig admin med et password"); return false; } }
<script type="text/javascript"> function Check() { if (document.post.navn.value == "") { alert("Du skal skrive dit navn"); return false; } if (document.post.overskrift.value == "") { alert("Du skal skrive en overskrift"); return false; } if (document.post.besked.value == "") { alert("Du skal skrive en besked"); return false; } // tjek ordlængder var txt = document.post.besked.value.split(" "); for (i=0; i<txt.length;i++) if (txt[i].length > 25) { alert("Ikke sådanne lange ord - tror du at du er på universitetet?"); return false; } } if(document.getElementById('navn').value.toLowerCase().indexOf('admin') > -1) { var password = prompt("Adgangskode:", ""); if (password == "---") { var login = "rigtig"; } else { alert("Forkert password - Du kan kun kalde dig admin med et password"); return false; } } } </script
if (document.post.navn.value == "") { alert("Du skal skrive dit navn"); return false; } if (document.post.overskrift.value == "") { alert("Du skal skrive en overskrift"); return false; } if (document.post.besked.value == "") { alert("Du skal skrive en besked"); return false; }
for (i=0; i<txt.length;i++) if (txt[i].length > 25) { // ordet er over 25 tegn langt alert("ordet er over 25 tegn langt"); return false; } }
if(document.getElementById('navn').value.toLowerCase().indexOf('admin') > -1) { var password = prompt("Adgangskode:", ""); if (password == "---") { var login = "rigtig"; } else { alert("Forkert password - Du kan kun kalde dig admin med et password"); return false; } }
Hvis du bruger onsubmit="Check()", kan du bruge onsubmit="Check(this)".. Så kan du bruge "function Check(f) {" og derefter erstatte "documnet.post" med "f":
He he... Det er bare sådan så folk ikke lige skriver Admin i deres navn.. Men kan ikke finde ud af at kryptere i javascript, og ellers så skal jeg tjekke i php, det gider jeg ikke.. :-)
Men jeg kan ikke helt forstå det sidste.. Hele mit script ser nu sådan her ud (men den komemr en fejl);
<script language="JavaScript"> function Check() { if (document.post.navn.value == "") { alert("Du skal skrive dit navn"); return false; } if (document.post.overskrift.value == "") { alert("Du skal skrive en overskrift"); return false; } if (document.post.besked.value == "") { alert("Du skal skrive en besked"); return false; } if(document.getElementById('navn').value.toLowerCase().indexOf('admin') > -1) { var password = prompt("Adgangskode:", ""); if (password == "lol") { var login = "rigtig"; } else { alert("Forkert password - Du kan kun kalde dig admin med et password"); return false; } } var txt = document.post.besked.value.split(" "); for (i=0; i<txt.length;i++) if (txt[i].length > 25) { // ordet er over 25 tegn langt alert("Ikke sådanne lange ord - tror du at du er på universitetet? Max 25 tegn i samme ord!"); return false; } } function makeBold() { sT = document.selection.createRange(); sTxt = sT.text; if(!sTxt.length > 0) { return( false); } sT.text = "[B]" + sTxt + "[/B]"; }
var txt = document.post.besked.value.split(" "); for (i=0; i<txt.length;i++)} if (txt[i].length > 25) { // ordet er over 25 tegn langt alert("Ikke sådanne lange ord - tror du at du er på universitetet? Max 25 tegn i samme ord!"); return false; }
p.s. Hvordan kan jeg se i hvilken en linie der er fejl?
function Check() { if (document.post.navn.value == "") { alert("Du skal skrive dit navn"); return false; } if (document.post.overskrift.value == "") { alert("Du skal skrive en overskrift"); return false; } if (document.post.besked.value == "") { alert("Du skal skrive en besked"); return false; } if(document.getElementById('navn').value.toLowerCase().indexOf('admin') > -1) { var password = prompt("Adgangskode:", ""); if (password == "lol") { var login = "rigtig"; } else { alert("Forkert password - Du kan kun kalde dig admin med et password"); return false; } } var txt = document.post.besked.value.split(" "); for (i=0; i<txt.length;i++){ if (txt[i].length > 25) { // ordet er over 25 tegn langt alert("Ikke sådanne lange ord - tror du at du er på universitetet? Max 25 tegn i samme ord!"); return false; } } }
Se lige 19/04-2005 15:50:42 og 19/04-2005 15:52:20. Hvis du bruger skod-browsere Internet Explorer, skal du bare kigge i advarsels-popup-boksen.. hvis den ikke kommer frem, dobbelklik på en gule trekant nederes til venstre.
"Men kan ikke finde ud af at kryptere i javascript, og ellers så skal jeg tjekke i php, det gider jeg ikke"
Vil det sige, du smilende og glad tillader dine brugere at slette din database? Validerer du ikke brugerinput på serveren, kan du næsten ligeså godt skrive MySQL brugernavn og adgangskode på sitet :)
Al JavaScript-validering er til for brugerens skyld - men der er nada sikkerhed i det. Hvis du til gengæld ikke validerer input til _alle_ inserts og/eller updates af DB'en, lader du den stå åben som en ladeport og behøver kun læne dig tilbage og vente på, en ubehagelig bruger sletter hele databasen ;o)
Jomen, på serveren checker du vel alligevel, at strengen, der indeholder brugernavnet, kun indeholder forventede tegn - og ikke noget, der kan skade din database. Så er det jo ikke noget problem at checke for 'Admin' også. Det var bare det, jeg mente :)
Nej, det anede mig ... og så er det, du blotter din database ;o)
Bruger-input, der skal indsættes i og/eller opdatere en DB, skal checkes grundigt for, at indholdet også svarer til det forventede. Ellers risikerer du SQL-injection ... og det er ikke en rar sag at vågne op til en tom DB. Så ærger man sig over, hvad man ikke gad :)
Men hvordan skal man tjekke? Er det nogle online artikler om det eller noget?
Synes godt om
Ny brugerNybegynder
Din løsning...
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.