<script language="javascript">
function check(formobj){
if(formobj.pass1.value.length==0 || formobj.pass1.value != formobj.pass2.value){
alert('Lösenordet måste vara ifyllt och identiskt i båda fälten');
return false;
} else if(formobj.username.value.length==0){
alert('Du måste ange ett användarnamn');
return false;
} else if(formobj.epost.value.indexOf('@')<0){
alert('Du måste ange en e-post adress');
return false;
} else {
return true;
}
}
</script>
Kan någon lägga till så att det kommer upp en ruta då om textarean innehåller <% eller %> i denna kod?
Du hade rätt, alla var inte textareor, hade skrivit fel men nu så skriver den bara ut sidan tills koden kommer, resten av sdain skriver den inte ut, varför?
<script language="javascript">
function check(formobj){
if(formobj.pass1.value.length==0 || formobj.pass1.value != formobj.pass2.value){
alert('Lösenordet måste vara ifyllt och identiskt i båda fälten');
return false;
} else if(formobj.username.value.length==0){
alert('Du måste ange ett användarnamn');
return false;
} else if(formobj.text.value.indexOf('<%')>=0 || formobj.text.value.indexOf('%>')>=0){
alert('Du får inte använda <% eller %>');
return false;
} else if(formobj.epost.value.indexOf('@')<0){
alert('Du måste ange en e-post adress');
return false;
} else {
return true;
}
}
</script>
Ursprungligen av ampy Du hade rätt, alla var inte textareor, hade skrivit fel men nu så skriver den bara ut sidan tills koden kommer, resten av sdain skriver den inte ut, varför?
<script language="javascript">
function check(formobj){
if(formobj.pass1.value.length==0 || formobj.pass1.value != formobj.pass2.value){
alert('Lösenordet måste vara ifyllt och identiskt i båda fälten');
return false;
} else if(formobj.username.value.length==0){
alert('Du måste ange ett användarnamn');
return false;
} else if(formobj.text.value.indexOf('<%')>=0 || formobj.text.value.indexOf('%>')>=0){
alert('Du får inte använda <% eller %>');
return false;
} else if(formobj.epost.value.indexOf('@')<0){
alert('Du måste ange en e-post adress');
return false;
} else {
return true;
}
}
</script>
Jovisst, det ät sant. Är det en html-sida är det inga problem, är det asp däremot får det bli så här;
Först;
var foo = '<'+'%'; var bar = '%'+'>';
och sedan;
} else if(formobj.message.value.indexOf(foo)>=0 || formobj.message.value.indexOf(bar)>=0){
alert('Du får inte använda '+foo+' eller '+bar);
return false;
Om någon matar in text i ditt formulär och har Javascript avslaget i sin webbläsare, kan denne fortfarande mata in <% och %> i dina textareor och få detta skickat till servern vid submit på formuläret.
Den enda säkra lösningen för att försäkra sig att användaren inte lyckas spara text i något felaktigt format (eller som i detta fall några oönskade teckensekvenser) som denne matat in i ett formulär är att se till att all inmatad text även kontrolleras av den serverside- (t.ex. asp- eller php-) kod som tar emot formulärinnehållet.
261 ms totalt · 4 externa anrop · v20260731065814-full.81e7e81c