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

    Form mail + controllo javascript

    Salve a tutti...

    Sto usando uno script molto semplice per una form mail; in pratica prima di inviare il form, controlla che tutti i campi obbligatori siano stati compilati. E fin qui ci sono...

    Il mio problema è questo; prima usavo un servizio gratuito per la form mail, e controllavo tutto con uno javascript...in particolare, faceva in modo che alcuni nomi fossero proibiti e, quando veniva premuto "submit", lo javascript avvisava con un alert che l'utente stava usando un nickname non regolare e invitava a cambiarlo.
    Ho provato ad usare lo stesso tipo di controllo anche con la form mail in php, ma non funziona in nessun modo.

    Mi chiedo, è possibile controllare una form mail in php con javascript, o devo inserire questo controllo direttamente nello script php? E se sì, come devo fare?
    Il controllo dei nick è fondamentale per il mio sito....

    Grazie in anticipo!
    Lady Butterfly
    "La fortuna di diventare me stessa e grazie a ciò più utile agli altri -ho vissuto anche questo." Cassandra (C. Wolf)

  2. #2
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Cioè vuoi che prima di passare alla pagina dell'action venga effettuato un controllo preventivo sui campi del form con javascript?
    Certo che è possibile.
    Devi però vere alcune accortenze.
    - Non devi mettere l'action nel tag form
    - Non devi mettere un submit ma un button che, con l'evento onclick richiami la funzione.
    - L'action del form deve essere impostato solo nel momento in cui vengono validati i campi del form e una volta impostato fai il submit.

  3. #3
    Quindi, io tolgo l'action, e ok; sostituisco il submit ad un bottone con l'onclick, e ok....

    non capisco cosa intendi con questo, però:
    - L'action del form deve essere impostato solo nel momento in cui vengono validati i campi del form e una volta impostato fai il submit.
    Cioè, di preciso cosa faccio....una nuova pagina?
    faccio in modo che una volta finito il controllo si impostino action e submit? Ma come?

    Grazie della risposta
    "La fortuna di diventare me stessa e grazie a ciò più utile agli altri -ho vissuto anche questo." Cassandra (C. Wolf)

  4. #4
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Ti faccio un esempio con una cosa del genere
    Codice PHP:
    <script>
    function 
    validate() {
     var 
    email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
     if (
    document.aziende.nome.value == "") {
      
    alert("Il campo Nome è vuoto");
      
    document.aziende.nome.focus();
      return 
    false;
     }
     else if (
    document.aziende.provincia.value.length 3) {
      
    alert("Il campo Provincia ha una lunghezza illegale");
      
    document.aziende.provincia.focus();
      return 
    false;
     }
     else if (!
    email_reg_exp.test(document.aziende.email.value)) {
      
    alert("Inserire un indirizzo email corretto.");
      
    document.aziende.email.focus();
      return 
    false;
     }
     else {
      
    document.aziende.action="invia.php";
      
    document.aziende.submit();
      return 
    true;
     }
    }   
    </script> 
    In pratica effettuo un controllo su alcuni campi del form se vanno tutti bene arrivo all'else e imposto i parametri del form:
    document.aziende.action="invia.php";
    imposta l'action del form nel quale ci saranno i comandi per inserire i valori nel database (o, nel tuo caso, i comandi per inviare le email).

    document.aziende.submit();
    Fa effettivamente il submit del form e quindi passa alla pagina "invia.php" che avevamo impostato prima.

  5. #5
    Grazie mille, ci proverò.
    Scusa se non ti ho risposto prima, ma non ho ricevuto notifica della risposta
    "La fortuna di diventare me stessa e grazie a ciò più utile agli altri -ho vissuto anche questo." Cassandra (C. Wolf)

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.