Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 40

Discussione: Filtro parolacce ASP

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483

    Filtro parolacce ASP

    Premetto che sono di ASP ne capisco proprio poco.. .ho trovato sulla rete una funzione gia fatta per impedire ke sul mio forum vengano inserite delle parolacce...tanto per capirci la funzione che ho trovato è la seguente:

    <%
    Function badWords(sText)
    'alcune parole poco consone, potete aggiungerne quante ne volete
    words = Array("cretino","stupido","imbecille","porcapalett a")
    stringa = sText
    For k = LBound(words) To UBound(words)
    stringa = Replace(stringa, words(k), String(Len(words(k)),"*"))
    Next
    badWords = stringa
    End Function
    %>

    X richiamare la funzione -->

    <%
    Response.write badWords(Request.Form("NOME_CAMPO_FORM"))
    %>

    -------------------------------
    Qualkuno mi puo' dire come inserire questa funzione nel file asp ke vi metto qua di seguito per controllare i dati immessi nel CAMPO MESSAGGIO DEL MIO FORM ?? ?

    <%@LANGUAGE = JScript%>
    <%
    var id_risposta = new String(Request.Form("id_risposta"));;
    var nome = new String(Request.Form("nome"));
    var email = new String(Request.Form("email"));
    var messaggio = new String(Request.Form("messaggio"));

    var data = new Date();
    var modificato = data.getDate() + "/" + (data.getMonth() + 1) + "/" + data.getYear() + " " + data.getHours() + "." + data.getMinutes() + "." + data.getSeconds();

    if ((nome == "") || (nome == "undefined") || (nome.charAt(0) == " "))
    {
    Response.Redirect("errore.asp?id=1");
    }
    if ((messaggio == "") || (messaggio == "undefined") || (messaggio.charAt(0) == " "))
    {
    Response.Redirect("errore.asp?id=3");
    }

    var Cn = new ActiveXObject("ADODB.Connection");
    var Rs = new ActiveXObject("ADODB.Recordset");

    Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("forum.mdb"));

    Rs.Open("messaggi",Cn,3,3);

    Rs.AddNew();
    Rs("id_risposta") = id_risposta;
    Rs("nome") = nome;
    Rs("mail") = email;
    Rs("messaggio") = messaggio;
    Rs("modificato") = modificato;
    Rs.Update();

    Rs.Close();

    var AggiornaClick = Cn.Execute("UPDATE messaggi SET risposte = risposte + 1 WHERE id LIKE '" + id_risposta + "'");
    var AggiornaDataModifica = Cn.Execute("UPDATE messaggi SET modificato = '" + modificato + "' WHERE id LIKE '" + id_risposta + "'");

    Response.Redirect("inserito.asp?id=5");

    Cn.Close();
    %>

    GRAZIE....

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    La funzione è sritta in VBscript mentre la tua pagina in JScript.
    Devi convertire una delle due.

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    Riesci molto gentilmente a buttarmi giu la versione della funzione adeguata x il mio file asp....poi se magari mi dici anche dove metterla...

  4. #4
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    ..caffè?

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    magari corretto

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    function badWords(sText) {
    //'alcune parole poco consone, potete aggiungerne quante ne volete
    words = new Array("cretino","stupido","imbecille","porcapalett a");
    stringa = sText;
    RE = new RegExp(".","gi")
    for (var k=0; k<words.length;k++) {
    stringa = stringa.replace(words[k], words[k].replace(RE, "\*"))
    }
    return stringa ;
    }

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    ma una volta inserita la mia funzione nel file asp (il cui contenuto è quello che avevo scritto nella testo d una mia domanda precedente)...come faccio a far si ke il contenuto del mio form MESSAGGIO venga monitorato da questa funzione ? dove e come devo inserire il rikiamo alla funzione....so di kiedere troppo....ma proprio delle funzioni c sto capendo troppo poco
    cmq grazie a ki mi ha aiutato fin ora....

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483

  9. #9
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    onsubmit="badWords(sText)"

    per esempio

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    ho provato a inserire la funzione nel mio file asp..ma mi da errore......qualkuno mi dice dove sblaglio ?

    <%@LANGUAGE = JScript%>
    <%

    function badWords(sText)
    {
    words = new Array ("cretino","stupido","imbecille","porcapaletta" );
    testo = sText;
    RE = new RegExp(".","gi")
    for (var k=0; k<words.length;k++) {
    testo = testo.replace(words[k], words[k].replace(RE, "\*"))
    }
    return testo ;
    }


    var id_risposta = new String(Request.Form("id_risposta"));;
    var nome = new String(Request.Form("nome"));
    var email = new String(Request.Form("email"));
    var messaggio = new String(badWords(Request.Form("messaggio")));

    E' giusto il modo come dico appena qua sopra ke creo una nuova variabile messaggio che è una stringa proveniente dal form messaggio a cui applico la funzione badWord ?
    cmq l errore me lo da sulla funzione alla riga

    testo = testo.replace(words[k], words[k].replace(RE, "\*"))

    del ciclo for

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.