Visualizzazione risultati 1 fino 10 di 10

Discussione: Controllo dati form

  1. #1
    Guest

    Predefinito Controllo dati form

    Salve,
    ho un form creato in php, seguendo un tutoria, ho creato una pagina con codice javascript per controllare che il form sia compilato correttamente.
    Ecoo il codice:
    [javascript]
    x= document.forms["scrivimi"]["nome"].value;
    y= document.forms["scrivimi"]["cognome"].value;
    z= document.forms["scrivimi"]["mail"].value;
    n= document.forms["scrivimi"]["object"].value;
    s= document.forms["scrivimi"]["object_text"].value;
    atpos= z.indexOf("@");
    dotpos= x.lastIndexOf(".");


    if (x == null || x == "") {
    alert("Inserisci un nome valido!");
    return false;
    }
    if (y == null || y == "") {
    alert("Inserisci un nome valido!");
    return false;
    }
    if (z == null || z == "") {
    alert("Inserisci email valida!");
    return false;
    }
    if (n == null || n == "") {
    alert("Inserisci un oggetto!");
    return false;
    }
    if (s == null || s == "") {
    alert("Inserisci un testo!");
    return false;
    }

    if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length) {
    alert("Email non valida");
    return false;
    }
    else {
    alert("Email inviata con successo");
    }

    }
    [javascript]

    vorrei inoltre inserire un messaggio che avverta che l'email è stata inviata. Potreste darmi qualche dritta?

  2. #2
    Guest

    Predefinito

    i controlli 'vuoto' si possono implementare anche con l'attributo required (browser recenti)
    l'invio mail devi riconoscerlo da php in base al risultato di mail()

  3. #3
    Guest

    Predefinito

    in pratica dove ho "" all'interno scrivo required?
    non ho capito la faccenda del php puoi farmi un esempio?
    Ti posto il codice che ho io php

    <?php

    if(!isset($_POST['invia']))die();

    $nome= $_POST['nome'];
    $cognome= $_POST['cognome'];
    $email= $_POST['email'];
    $oggetto= $_POST['object'];
    $msg= $_POST['object_text'];

    $fullmsg= "$nome $cognome <$email>\n\n Oggetto: $oggetto\n\n$msg";
    mail(
    "raccolta_email@yahoo.com",
    $oggetto,
    $fullmsg,
    "From: $email");

    ?>

  4. #4
    Guest

    Predefinito

    intendo
    <form ...>
    <input type ... required>
    </form>

    mail:

    if ( mail ( ... ) )
    echo "Email inviata con successo";
    else
    echo "Non è stato possibile inviare la mail";

    questo ti informa circa la 'partenza' della lettera o meglio la presa in carico da parte del server 'delle spedizioni' , non la ricezione
    Ultima modifica di FormularioDiDrakensang : 27-10-2014 alle ore 20.23.03

  5. #5
    Guest

    Predefinito

    ah ok ci provo, grazie!

  6. #6
    Guest

    Predefinito

    al posto dei puntini non so cosa devo mettere.

    comunque il required non funziona...

  7. #7
    NLSweb non è connesso Altervistiano Junior
    Data registrazione
    17-01-2014
    Messaggi
    658

    Predefinito

    comunque il required non funziona...
    esempio di sintassi funzionante:
    Codice:
    <form action=".......">
    Username: <input type="text" name="usrname" required />
    <input type="submit" />
    </form>
    da quanto ne so l'attributo REQUIRED non e' supportato da SAFARI e da IE9 o precedenti versioni

  8. #8
    Guest

    Predefinito

    infatti uso safari, quale sarebbe l'alternativa?

  9. #9
    NLSweb non è connesso Altervistiano Junior
    Data registrazione
    17-01-2014
    Messaggi
    658

    Predefinito

    dipende ... ad esempio puoi usare un funzione JS prima dell'invio che controlli che tutti i campi siano corretti , e solo in quel caso ti abiliti il Submit

    ho trovato questo se ti interessa....
    Ultima modifica di NLSweb : 28-10-2014 alle ore 23.02.39

  10. #10
    Guest

    Predefinito

    non riesco a farlo funzionare alla fine in un sito consigliavano il controllo tramite php, lo posto nella sezione apposta.

Regole di scrittura

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