Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697

    Bloccare le parole proibite

    Ho trovato questo interessante script che blocca le parole proibite in js, io ho già un codice php che lo fa: richiama le parole da una pagina esterna che contiene l'array.

    Volevo sapere se modificando questo codice è possibile richiamare direttamente le parole dal file php senza (come si vede qui) dover inserirle manualmente

    codice:
    <SCRIPT LANGUAGE= "JavaScript">
    var k = 3; //il numero delle parole. Da variare se ne inserite di più o meno.
    var isProfane = new makeArray(k);
    var word = new makeArray(k);
    function checkForProfanity(elnum) {
    var temp = document.forms[0].elements[elnum].value;
    temp = temp.toLowerCase();
    word[1] = "ciao";
    word[2] = "salve";
    word[3] = "addio";
    for (var j = 1; j <= k; j++) {
    isProfane[j] = temp.indexOf(word[j]);
    }
    for (var j = 1; j <= k; j++) {
       if (isProfane[j] != -1) {
          alert("Non puoi usare il termine \'"+word[j]+"\'.");
          document.forms[0].elements[elnum].value = "";
          j = k + 1;
          document.forms[0].elements[elnum].focus();
           }
       else {}
    }
    }
    function makeArray(n) {
       this.length = n
       for (var i = 1; i<=n; i++) {
           this[i] = new String();
       }
       return this
    }
    </SCRIPT>

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Puoi benissimo far scrivere le parole al PHP

    codice:
    <SCRIPT LANGUAGE= "JavaScript">
    var k = 3; //il numero delle parole. Da variare se ne inserite di più o meno.
    var isProfane = new makeArray(k);
    var word = new makeArray(k);
    function checkForProfanity(elnum) {
    var temp = document.forms[0].elements[elnum].value;
    temp = temp.toLowerCase();
    
    
    Codice PHP:
    <?php   //procedura che legge dal file e   //mette in un array $proibite   for ($i 0$i count($proibite); $i++) {     echo("word[".$i."] = \"".$proibite[$i]."\";\n");   } ?>
    for (var j = 1; j <= k; j++) { isProfane[j] = temp.indexOf(word[j]); } for (var j = 1; j <= k; j++) { if (isProfane[j] != -1) { alert("Non puoi usare il termine '"+word[j]+"'."); document.forms[0].elements[elnum].value = ""; j = k + 1; document.forms[0].elements[elnum].focus(); } else {} } } function makeArray(n) { this.length = n for (var i = 1; i<=n; i++) { this[i] = new String(); } return this } </SCRIPT>
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Andrea1979
    Puoi benissimo far scrivere le parole al PHP

    codice:
    <SCRIPT LANGUAGE= "JavaScript">
    var k = 3; //il numero delle parole. Da variare se ne inserite di più o meno.
    var isProfane = new makeArray(k);
    var word = new makeArray(k);
    function checkForProfanity(elnum) {
    var temp = document.forms[0].elements[elnum].value;
    temp = temp.toLowerCase();
    
    
    Codice PHP:
    <?php   //procedura che legge dal file e   //mette in un array $proibite   for ($i 0$i count($proibite); $i++) {     echo("word[".$i."] = \"".$proibite[$i]."\";\n");   } ?>
    for (var j = 1; j <= k; j++) { isProfane[j] = temp.indexOf(word[j]); } for (var j = 1; j <= k; j++) { if (isProfane[j] != -1) { alert("Non puoi usare il termine '"+word[j]+"'."); document.forms[0].elements[elnum].value = ""; j = k + 1; document.forms[0].elements[elnum].focus(); } else {} } } function makeArray(n) { this.length = n for (var i = 1; i<=n; i++) { this[i] = new String(); } return this } </SCRIPT>
    Ne ho 2 tipi di parole proibite, uno normale e uno per gli url che mette a video "il sito www.parola proibita.it non è ammesso".


    Codice PHP:
    //parole proibite (vedi parole-proibite.php)
    $stringa $_POST['messaggio'].' '.$nome.' '.$email.' '.$url.' '.$citta;
    foreach(
    $parole_proibite as $parola){
    if (
    stristr($stringa$parola) !== false){
    $errore .= "<tr><td valign=\"center\"><center><font family=\"arial\" size=\"5\">La parola \"<font color=\"red\">$parola</font>\" non è ammessa</font></center>
    "
    ;
     }
    }
    //parole proibite inserite nell'url (vedi parole-proibite.php)
    $stringa $_POST['url'];
    $stringa explode(" ",strtolower($stringa)); 
    foreach(
    $stringa as $sito){
    foreach(
    $parole_proibite as $banned){ 
    if (
    strpos($sito,$banned)) 
    $errore .= "<tr><td valign=\"center\"><center><font family=\"arial\" size=\"5\">Il sito \"<font color=\"red\">$sito</font>\" non è ammesso</font></center>
    "
    ;
     } 


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.