Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    controllo caratteri speciali

    function valida_carat(oggetto,k)
    {
    var str=oggetto.value;

    var re = /[/"$°()]/;

    if((str!='') && (!(!re.test(str))))
    {
    alert('Inserire correttamente Caratteristiche Tecniche. I caratteri speciali /,",$,(,),° non sono ammessi.\n');
    document.inserisci.conferma.disabled=1;
    }
    else { document.inserisci.conferma.disabled=0; }

    }

    <input type="SUBMIT" value="Correggi" name="conferma">
    <input type="RESET" value="Annulla" name="RESET" >

    NON funziona: il pulsante Conferma risulta sempre abilitato e anche se inserisco uno dei caratteri non ammessi, il form viene inserito ugualmente nel DB causandomi errori!!!! Cosa c'è di sbagliato????

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    codice:
    ...(!(!re.test(str))...
    perchè usi una doppia negazione??
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Originariamente inviato da fcaldera
    codice:
    ...(!(!re.test(str))...
    perchè usi una doppia negazione??
    sarà quello l'errore??? Boh.... provo e ti dico!

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    di sicuro se c'è un errore non dipende da quello...

    esegui il tuo script con firefox e guarda che cosa viene riportato dalla console javascript (tipo di errore e numero di riga in cui si verifica)
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Originariamente inviato da fcaldera
    di sicuro se c'è un errore non dipende da quello...

    esegui il tuo script con firefox e guarda che cosa viene riportato dalla console javascript (tipo di errore e numero di riga in cui si verifica)
    ora sto uscendo ..domani ti scrivo il tutto in dettaglio....spero di trovarti...ciao

  6. #6
    Originariamente inviato da fcaldera
    di sicuro se c'è un errore non dipende da quello...

    esegui il tuo script con firefox e guarda che cosa viene riportato dalla console javascript (tipo di errore e numero di riga in cui si verifica)
    Stavo pensando di risolvere il problema in un altro modo:
    dato che io vorrei non far inserire quei caratteri speciali per il semplice motivo che mi fanno casino nel codice. E' possibile far convertire tutti i caratteri speciali in modo che non diano fastidio ai codici PHP, SQL, Javascript, etc... ?????
    Io so che esiste una bellissima tabella dei caratteri ASCII, ma non riesco ad immaginare come poterla usare per risolvere il mio problema! :master:

    Attendo proposte.....please....

  7. #7
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    leggi questo articolo allora

    http://xkr.us/articles/javascript/encode-compare/


    ciao
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  8. #8

    aiutooooooooooooooooooo

    Originariamente inviato da fcaldera
    leggi questo articolo allora

    http://xkr.us/articles/javascript/encode-compare/


    ciao
    Io non ci sto capendo più niente.... ti riporto qui il codice...sperando di risolvere.
    In pratica io dovrei obbligare l'utente a compilare i campi carat."$k" e convertire in ASCII tutti i caratteri speciali da lui inseriti in modo che non i causino errori strani nel codice!
    Sono giorni che batto la testa su questo argomento e non son riuscito ancora a risolverlo!


    function valida_carat(oggetto,k)
    {
    var str=oggetto.value;
    var re = /[/"$]/;
    if((str!='') && (!(!re.test(str))))
    {
    alert('Inserire correttamente Caratteristiche Tecniche. I caratteri speciali /,",$ non sono ammessi.\n');
    document.inserisci.conferma.disabled=1;
    }
    else { document.inserisci.conferma.disabled=0; }

    }


    <DIV id=rettangolo_car_tec>
    <?PHP
    $userQuery = mssql_query("SELECT carat1, carat2, carat3, carat4, carat5, carat6, carat7, T_orcadcis.carat8, carat9, carat10, carat11, carat12, carat13, carat14, carat15, tecnologia_costruttiva
    FROM torca
    WHERE (famiglia='$family') ",$link);
    if (!$userQuery)
    die("Impossibile visualizzare i dati delle tabelle : ".mssql_error());

    $tot = mssql_num_rows($userQuery);

    $a_row = mssql_fetch_row($userQuery);
    $carat1 = $a_row[0];
    $carat2 = $a_row[1];
    $carat3 = $a_row[2];
    $carat4 = $a_row[3];
    $carat5 = $a_row[4];
    $carat6 = $a_row[5];
    $carat7 = $a_row[6];
    $carat8 = $a_row[7];
    $carat9 = $a_row[8];
    $carat10 = $a_row[9];
    $carat11 = $a_row[10];
    $carat12 = $a_row[11];
    $carat13 = $a_row[12];
    $carat14 = $a_row[13];
    $carat15 = $a_row[14];
    $tec_costr = $a_row[15];

    #

    $query_note= mssql_query("SELECT traduzione_vista.campo FROM traduzione_vista WHERE ((nome_vista='$family') AND (descrizione='note')) ORDER BY traduzione_vista.indice",$link);
    if (!$query_note) {
    die("Impossibile associare la caratteristica Note alla famiglia selezionata : ".mssql_error());
    $presenza_note=0;
    }
    $presenza_note=1;
    $tot = mssql_num_rows($query_note);
    $c_row = mssql_fetch_row($query_note);

    #

    if($c_row[0]=='') { echo $presenza_note=0;}

    #

    $query_incroc= mssql_query("SELECT traduzione_vista.descrizione, traduzione_vista.campo FROM traduzione_vista WHERE (nome_vista='$family') ORDER BY traduzione_vista.indice",$link);
    if (!$query_incroc)
    die("Impossibile visualizzare i dati delle tabelle : ".mssql_error());

    $tot = mssql_num_rows($query_incroc);
    $i=0;
    $max=0;
    print '<TABLE><TR><TD>';
    print '<TABLE><TR>';
    while (($i < $tot) and ($b_row = mssql_fetch_row($query_incroc)))
    {
    $variabile='desc_carat'.$i;
    $$variabile=$b_row[0];
    $campo = $b_row[1];
    if ($a_row[$i]=='') $a_row[$i]='';

    if ($$variabile == 'note') { $et_note=$$variabile;
    $cp_note=$$campo;
    $i++;
    $y=$i;
    }
    else {
    $k=$i+1;
    print '<TD><TABLE><TR><TD>'.$$variabile.'</TD></TR><TR><TD><INPUT size=20 maxlength=100 name="carat'.$k.'" onBlur="convertToLowercase(this);valida_carat(this ,'.$k.')" ></TD></TR></TABLE>';

    $i++;
    $max++;
    }



    if ($max > 3)
    {
    print '</TD></TR></TABLE>';
    print '
    ';
    print '<TABLE><TR>';
    $max=0;
    }


    }

    if ($tec_costr=='') $tec_costr='';

    print '</TD></TR></TABLE>';

    if($presenza_note=='1') {
    print '<TABLE><TR><TD><TABLE><TR><TD>'.$et_note.'max 100 crt.)</TD></TR><TR><TD><TEXTAREA tabindex=88 name="carat'.$y.'" rows="5" cols="90" wrap="virtual" onBlur="convertToLowercase(this);valida_carat(this ,'.$y.')" ></TEXTAREA>
    ';
    print '</TD></TR></TABLE>
    ';
    }
    print '<TR><TD><TABLE><TR><TD>Tecnologia Costruttiva:</TD><TD><INPUT tabindex=88 size=50 maxlength=100 name="tec_costr" onblur="this.value=this.value.toLowerCase()"></TD></TR></TABLE>';


    PRINT '</TD></TR></TABLE><table><tr><td>
    <input type="SUBMIT" value="Inserisci" name="conferma"></td><td align="left"> <input type="RESET" value="Annulla" name="RESET" ></td></tr></table>';
    print '</TD></TR></TABLE>';

    ?>
    </DIV>

  9. #9

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.