Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20

Discussione: Codice fantasma

  1. #1
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697

    Codice fantasma

    Ho questo codice nel file esterno

    codice:
    function xxx1(){ 
    var f = document.mioform1; 
    var parole = new RegExp("(mel(a|e)|per(a|e))"); 
    var stringhe = ["nome","suoemail","citta","messaggio"]; 
    for (i=0; i<stringhe.length; i++){
    var campo = eval(f+"." + stringhe[i]);
    if(campo.value.match(parole) && campo.value.match(parole)[0]){ 
    campo.style.backgroundColor='red' 
    campo.style.color='white' 
    alert("La parola '"+campo.value.match(parole)[0]+"' non è ammessa"); 
    campo.focus(); 
    campo.style.color='' 
    return false; 
    } 
     }
    return true; 
    }
    che richiamo nel form cosi:

    codice:
    <form...onsubmit="return xxx1() ">
    Quando lo testo da errore "object" non è definito
    su questa riga if(campo.value.match(parole) && campo.value.match(parole)[0]){

    ...ma non c'è quella parola (object)!! VVoVe:

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ma perché usi eval? Non ti bastava un document.nomeform.elements[stringhe[i]].value ....
    <´¯)(¯`¤._)(¯`»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
    ma perché usi eval? Non ti bastava un document.nomeform.elements[stringhe[i]].value ....
    Ho letto che eval rende il codice compatibile con tutti i browser,
    tu come lo metteresti?

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    direi che eval è il male, ma c'è e qualcuno lo usa...

    cambierei questa riga
    codice:
    var campo = eval(f+"." + stringhe[i]);
    in

    codice:
    var campo = f.elements[stringhe[i]];
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Andrea1979
    direi che eval è il male, ma c'è e qualcuno lo usa...

    cambierei questa riga
    codice:
    var campo = eval(f+"." + stringhe[i]);
    in

    codice:
    var campo = f.elements[stringhe[i]];
    Funziona con ie7, ff, opera

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    e con ie6? suppongo di sì, almeno... io uso sempre l'array elements...
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Andrea1979
    e con ie6? suppongo di sì, almeno... io uso sempre l'array elements...
    Ok, gia che ci siamo per chiudere il post: se io avessi la stessa identica reg però in php e in un file esterno, come la richiamo in questo codice js al posto di questa che ho?

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    mi pare che sia una domanda da php... leggi il file php e usi una delle funzioni di php per le regex (preg_match, eregi etc etc). Trovi di più su php.net/fopen e fread
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Utente bannato L'avatar di Braco
    Registrato dal
    Oct 2005
    Messaggi
    1,697
    Originariamente inviato da Andrea1979
    mi pare che sia una domanda da php... leggi il file php e usi una delle funzioni di php per le regex (preg_match, eregi etc etc). Trovi di più su php.net/fopen e fread
    Era una domanda mista, poi al limite posto in php, mi serviva solo sapere il richiamo..include, ecc, solo il richiamo da sostituire alla reg che ho

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    dipende appunto se il controllo lo vuoi fare lato server (più sicuro) o lato client (non sicuro e comunque non può essere l'unico controllo che fai, visto che se disattivo javascript tutto il sistema va a farsi benedire). Se leggi un file lato server per produrre un controllo lato client... bhè, non è che ci hai fatto la furbata della vita
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.