Script per trasformare apici in altri caratteri

saverio_web

Utente Attivo
Ragazzi ho bisogno di uno script per trasformare gli apici che vengono inseriti in un <input> o in un <textarea> in altri caratteri. Questo perché poi vengono inviati ad un pagina che li inserisce in un database Access, e l'ASP da dei problemucci quando si inseriscono dei caratteri quali "virgolette" e 'apostrofo', per questo vorrei eliminarli già dalla parte client.

Io ho provato inizialmente con questo, ma sembra che non capisca che non li riconosca...
HTML:
<script type="text/javascript">
function interceptTabs(evt, control)
    {
    key = evt.keyCode ? evt.keyCode : evt.which ? evt.which : evt.charCode;
    if (key==39)
	    {
	    insertAtCursor(control, 'ALTRO CARATTERE1');
        return false;
	    }
    else if (key==34)
        {
        insertAtCursor(control, 'ALTRO CARATTERE2');
        return false;
        }
    else if (key==13)
        {
        insertAtCursor(control, '<br>');
        return false;
        }
    else
        {
        return key;
        }
    }
</script>


<input name="InfoLib" onkeydown="return interceptTabs(event, this);"
E' uno script che DOVREBBE riconosce il carattere legato a quel codice ASCII (34,39,13) e se lo trova lo sostituisce, sennò lascia il carattere inserito.

PS: c'è anche un altro script legato a questo, se vi interessa lo posto, ma credo sia irrilevante perché il tasto INVIO lo sostituisce correttamente con il <br>.
 
Ultima modifica:
È una follia affidare l'escape dei dati a Javascript: qualunque principiante con un minimo di conoscenze potrebbe facilmente manipolare i sorgenti della pagina e potenzialmente distruggere il database.

È altresì una follia usare ASP (e Windows più in generale) per realizzare un sito Web. Ti consiglio di passare a qualunque altro ambiente, non necessariamente PHP: Python, Ruby on Rails, Java... Comunque, ecco un articolo che spiega come fare in ASP.
 
È una follia affidare l'escape dei dati a Javascript: qualunque principiante con un minimo di conoscenze potrebbe facilmente manipolare i sorgenti della pagina e potenzialmente distruggere il database.

È altresì una follia usare ASP (e Windows più in generale) per realizzare un sito Web. Ti consiglio di passare a qualunque altro ambiente, non necessariamente PHP: Python, Ruby on Rails, Java... Comunque, ecco un articolo che spiega come fare in ASP.

Sono d'accordo con te, però per ora sto facendo questo progetto in ASP. Dopo ho in programma di impararmi bene bene il PHP, però ora come ora non ho tempo sfortunatamente >.<

Comunque ti ringrazio per la risposta =)
 
Ciao,
posto una funzione leggermente modificata che avevo postato qui Al post #30

non permette l'nseriemnto dei caratteri dichiarati nell'espressione
in questo caso ho indicato gli apici [\'\"]
HTML:
<script type="text/javascript">
    function non_consentiti(campo) {
        var re = new RegExp("^[\'\"]+$", "");
        var valore = campo.value;  
        for ( var i = 0; i < valore.length; i++ ) {
            if (valore.charAt(i).match(re)) {
                campo.value = valore.substring(0, i);
                return;
            }   
        }
    }  
</script>
<input type="text" name="campo" onkeyup="non_consentiti(this)"/>
 

Discussioni simili