Pagina 3 di 3 PrimoPrimo 123
Visualizzazione risultati 61 fino 70 di 70

Discussione: [js] Bloccare parole proibite

  1. #61
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Scrivi l'errore completo che ti esce e la riga in cui ti esce.

    P.S.: Ho unito le due discussioni, non aprire più di una discussione sullo stesso argomento.
    P.S.: I tag [HTML] colorano bene il codice HTML, i tag [PHP] colorano bene il codice PHP e i tag [CODE] non colorano nulla. Guardate qui.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  2. #62
    Guest

    Predefinito

    Citazione Originalmente inviato da funcool
    Scrivi l'errore completo che ti esce e la riga in cui ti esce.

    P.S.: Ho unito le due discussioni, non aprire più di una discussione sullo stesso argomento.
    P.S.: I tag [HTML] colorano bene il codice HTML, i tag [PHP] colorano bene il codice PHP e i tag [CODE] non colorano nulla. Guardate qui.
    Errore di Sintassi: while (var fields=document.getElementsByTagName('input')){

    function xxx1(nome){
    var f = document.mioform1;
    var parole = new RegExp("(mel(a|e)|per(a|e))");
    while (var fields=document.getElementsByTagName('input')){
    var field=fields.name;
    var stringa = document.mioform1.field.value;
    if(stringa.match(parole) && stringa.match(parole)[0]){
    f.field.style.backgroundColor='red'
    f.field.style.color='white'
    alert("La parola '"+stringa.match(parole)[0]+"' non è ammessa");
    f.field.focus();
    f.field.style.color=''
    return false;
    }
    }
    }

  3. #63
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Prova a fare così:
    Codice:
    function xxx1(nome) {
    	var f = document.mioform1;
    	var parole = new RegExp("(mel(a|e)|per(a|e))");
    	var fields;
    	while (fields=document.getElementsByTagName('input')) {
    		var field=fields.name;
    		var stringa = document.mioform1.field.value;
    		if (stringa.match(parole) && stringa.match(parole)[0]) {
    			f.field.style.backgroundColor='red'
    			f.field.style.color='white'
    			alert("La parola '"+stringa.match(parole)[0]+"' non è ammessa");
    			f.field.focus();
    			f.field.style.color=''
    			return false;
    		}
    	}
    }
    Ti esce fuori solo "Errore di sintassi"?
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  4. #64
    Guest

    Predefinito

    Citazione Originalmente inviato da funcool
    Prova a fare così:
    Codice:
    function xxx1(nome) {
    	var f = document.mioform1;
    	var parole = new RegExp("(mel(a|e)|per(a|e))");
    	var fields;
    	while (fields=document.getElementsByTagName('input')) {
    		var field=fields.name;
    		var stringa = document.mioform1.field.value;
    		if (stringa.match(parole) && stringa.match(parole)[0]) {
    			f.field.style.backgroundColor='red'
    			f.field.style.color='white'
    			alert("La parola '"+stringa.match(parole)[0]+"' non è ammessa");
    			f.field.focus();
    			f.field.style.color=''
    			return false;
    		}
    	}
    }
    Ti esce fuori solo "Errore di sintassi"?
    Ora non da piu errore www.photoman.altervista.org/scrivimi1.php ma non blocca la parola

    Nel campo ho <input... onblur="xxx1(nome);" />

  5. #65
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Togli onblur="xxx1(nome);" e nel form aggiungi onsubmit="xxx1();".
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  6. #66
    Guest

    Predefinito

    Citazione Originalmente inviato da funcool
    Togli onblur="xxx1(nome);" e nel form aggiungi onsubmit="xxx1();".
    Nel form ho già
    Codice HTML:
    <form...onsubmit="return controlla1();">
    ho messo cosi ma non blocca la parola
    Codice HTML:
    <form...onsubmit="return controlla1();xxx1();">
    Se invece metto solo cosi <form...onsubmit="xxx1();"> non blocca la parola
    Ultima modifica di photoman : 20-07-2007 alle ore 13.06.43

  7. #67
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Prova a mettere nel form:
    Codice HTML:
    <form ... onsubmit="return xxx1();">
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  8. #68
    Guest

    Predefinito

    Riprendo questo post dopo qualche anno. Questo codice funziona, ma non trova l'esatta parola contenuta nell'array.
    Es: se nell'array c'è la parola mela.it ed io nel form inserisco un'email del tipo mail@mela.it, l'alert esce correttamente, ma se appena dopo la chiocciola o alla fine di it inserisco qualsiasi carattere, l'alert non se ne va, se ne va solo se lo inserisco in mezzo o alla fine di mela o all'inizio di it

    Codice PHP:
    include ("email_spam.php");
    ?>
    <script>
    function spamMail() {
    var f = document.mioform1;
    var xxx = new Array(<?php
    for($i=0;$i<count($blacklist)-1;$i++) echo "'{$blacklist [$i]}',";
    echo
    "'{$blacklist [count($blacklist )-1]}'";
    ?>);
    var f = document.forms.mioform1;
    for (var i = 0; i < xxx.length; i++)
    if (f.suoemail.value.indexOf (xxx[i]) != (-1)) {
    document.getElementById('spamMail').innerHTML = "&bull;&nbsp;&nbsp;Questa email non &egrave; accettata";
    f.suoemail.focus();
    return false;
    }
    else {
    document.getElementById('spamMail').innerHTML = "";
    }
    return true;
    }
    </script>
    Ultima modifica di photoman : 23-04-2016 alle ore 05.06.15

  9. #69
    downloadeguide non è connesso Utente giovane
    Data registrazione
    23-12-2015
    Messaggi
    47

    Predefinito

    Scusate se questa discussione è del 2007, ma vorrei dare un aiuto.
    Codice:
    <script>
    function controllaparole() {
    var ParolaProibita1 = ('Ananas');
    var ParolaProibita2 = ('Arancia');
    var ParolaProibita3 = ('Banane');
    var CampoDiTesto = document.getElementById('TestoForm')
    if (CampoDiTesto==ParolaProibita1 || CampoDiTesto==ParolaProibita2 || CampoDiTesto==ParolaProibita3)
    alert('Hai scritto una parola proibita. La parola in questione è: '+CampoDiTesto.innerHTML'. Riprova.')
    else
    window.location.href = 'Ok.html' };
    </script>

  10. #70
    Guest

    Predefinito

    Tempo fa ho risolto in questo modo con ajax:

    File email_spam.php con la blacklist

    Codice PHP:
    <?php
    $blacklist
    = array (
    'clrmail.com',
    'a.b.c.dropmail.me',
    'fudgerub.com'
    );
    ?>
    scrivimi1.php che include il file php con la blacklist

    Codice PHP:
    <?php
    include ("email_spam.php");
    ?>
    <script>
    function spamMail() {
    var f = document.forms.mioform1.suoemail.value;
    var input = document.forms.mioform1.suoemail;
    var xxx = new Array(<?php echo "'" . implode("', '", $blacklist) . "'"; ?>);
    var fields = f.split("@");

    //Se l'indirizzo non ha dominio, non fare nulla
    if (fields.length == 0) {
    return true;
    }
    var domain = fields[fields.length -1 ];

    // Se incontri un dominio della blacklist, fermati
    for (var i = 0; i < xxx.length; i++) {
    if (domain == xxx[i]) {
    document.getElementById('spamMail').innerHTML = "&bull;&nbsp;&nbsp;Questa email non &egrave; accettata";
    input.onblur = function () { input.focus(); }
    return false;
    }
    }
    document.getElementById('spamMail').innerHTML = "";
    input.onblur = function () {}
    return true;
    }
    </script>
    script.js

    Codice PHP:
    //Questa funzione richiama il file email_ajax.php
    function validaMail() {
    var
    input = document.forms.mioform1.suoemail;
    var
    email = input.value;
    var
    container = document.getElementById('validaMail');

    // Stops if no address was given
    if (email === "") {
    input.onblur = function () {}
    return;
    }
    $.
    get("email_ajax.php", { "email": email }, function (data) {
    if (
    data.valid) {
    container.innerHTML = "";
    input.onblur = function () {}
    }
    else {
    container.innerHTML = "&bull;&nbsp;&nbsp;Inserire un'email valida";
    input.onblur = function () { input.focus(); }
    }
    });
    }

    email_ajax.php

    Codice PHP:
    <?php
    //Questa funzione si collega a script.js e serve a validare in js FILTER_VALIDATE_EMAIL
    header('Content-Type: application/json');

    // Stops if no address is given
    if (!isset($_GET['email'])) {
    echo
    json_encode(array("valid" => false));
    return;
    }

    // Stops if address is empty or invalid
    $email = $_GET['email'];
    if (empty(
    $email) || filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
    echo
    json_encode(array("valid" => false));
    return;
    }
    // Address is valid
    echo json_encode(array("valid" => true));

    E infine il controllo in php che si collega anch'esso alla blakclist

    Codice PHP:
    //Email (Campo obbligatorio), valida email e intercetta il dominio spam
    function get_domain($email) {
    if (
    filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
    return
    "";
    }
    return
    array_pop(explode('@', $email));
    }
    function
    in_blacklist($domain) {
    global
    $blacklist;
    return
    in_array($domain, $blacklist);
    }
    $domain = get_domain($suoemail);
    if (empty(
    $suoemail)) {
    $errore .= "&bull;&nbsp;&nbsp;Inserire l'email<br><br>";
    }
    else {
    if (
    filter_var($suoemail, FILTER_VALIDATE_EMAIL) === false) {
    $errore .= "&bull;&nbsp;&nbsp;Inserire un'email valida<br><br>";
    }
    elseif (empty(
    $domain) || in_blacklist($domain)) {
    $errore .= "&bull;&nbsp;&nbsp;Questa email non &egrave; accettata<br><br>";
    }
    }

Pagina 3 di 3 PrimoPrimo 123

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •