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

    campi obbligatori in un form di iscrizione

    ciao a tutti! ho il form in php che ho riportato sotto.. funziona, però vorrei fare in modo che non venga inviato se non si compilano tutti i campi, e far apparire la classica frase "ATTENZIONE! Compila tutti i campi obbligatori per portare a buon termine l'iscrizione."

    Come posso fare? Grazie in anticipo

    Codice PHP:
    <?php

    #-----VARIABILI DI IMPOSTAZIONE------#

    // Indirizzo e-mail del destinatario (se lasci "form" lo invierà all'indirizzo di chi compila il form, se no sostituiscilo con un indirizzo e-mail tipo "tuoindirizzo@tuoprovider.com")
    $indirizzo "***@***";

    // Oggetto dell'e-mail
    $oggetto "Iscrizione";

    // Vedi sotto per il testo 

    #-----FINE DELLE VARIABILI DI IMPOSTAZIONE------#


        //Pulisco i dati in ingresso, non si sa mai
        
    $name strip_tags($_POST['Nome']);
        
    $surname strip_tags($_POST['Cognome']);
        
    $borninfo strip_tags($_POST['Luogo_data_nascita']);
        
    $address strip_tags($_POST['Indirizzo']);
        
    $city strip_tags($_POST['Citta']);
        
    $prov strip_tags($_POST['Provincia']);
        
    $mail strip_tags($_POST['email']);
        
    $phoneno strip_tags($_POST['Telefono']);
        
    $mobile strip_tags($_POST['Cellulare']);
        
    $job strip_tags($_POST['Professione']);
        
    $disc strip_tags($_POST['Disciplina']);
        
    $iscriz strip_tags($_POST['Iscrizione']);
        
    $fisc strip_tags($_POST['Cod_fiscale']);
        
    $lunchthu strip_tags($_POST['Lunch_gio']);
        
    $lunchfri strip_tags($_POST['Lunch_ven']);
        if(isset(
    $_POST['Comunicazioni']))    $tips strip_tags($_POST['Comunicazioni']);
        else    
    $tips "Non sono state aggiunte comunicazioni.";
        
    // Controlliamo se questo signore vuole iscriversi a qualche corso
        // e, se si, vediamo a quale...
        
    if(isset($_POST['Corso1']))   $corso1 "Si";
        else 
    $corso1 "No";
        if(isset(
    $_POST['Corso2']))   $corso2 "Si";
        else 
    $corso2 "No";
        if(isset(
    $_POST['Corso3']))   $corso3 "Si";
        else 
    $corso3 "No";
        if(isset(
    $_POST['Corso4']))   $corso4 "Si";
        else 
    $corso4 "No";

        
        
    // Scriviamo il testo dell'e-mail che verrà inviata
        
    $testo "Nome: $name\n";
        
    $testo .= "Cognome: $surname\n";
        
    $testo .= "Luogo e data di nascita: $borninfo\n";
        
    $testo .= "Indirizzo: $address\n";
        
    $testo .= "Città: $city\n";
        
    $testo .= "Provincia: $prov\n";
        
    $testo .= "E-mail: $mail\n";
        
    $testo .= "Telefono: $phoneno\n";
        
    $testo .= "Cellulare: $mobile\n";
        
    $testo .= "Professione: $job\n";
        
    $testo .= "Disciplina: $disc\n";
        
    $testo .= "Iscrizione a: $iscriz\n";
        
    $testo .= "Codice fiscale: $fisc\n\n";
        
    $testo .= "RICHIESTA ISCRIZIONE\n";
        if(
    $corso1 == "Si")    $testo .= "Corso 1: $corso1\n";
        if(
    $corso2 == "Si")    $testo .= "Corso 2: $corso2\n";
        if(
    $corso3 == "Si")    $testo .= "Corso 3: $corso3\n";
        if(
    $corso4 == "Si")    $testo .= "Corso 4: $corso4\n";
        
    $testo .= "-----------\n";
        
    $testo .= "Pranzo GIOVEDÌ 7: $lunchthu\n";
        
    $testo .= "Pranzo VENERDÌ 8: $lunchfri\n";
        if(isset(
    $_POST['Comunicazioni']) && $_POST['Comunicazioni'] != '')
        {
            
    $testo .= "Comunicazioni: $tips\n\n";
        }
        
        
    // Ora passiamo all'invio (controlliamo che questo venga eseguito correttamente o inviamo un messaggio di errore
        
    $headers "From: $mail";
        if(
    mail($indirizzo$oggetto$testo$headers))
        echo 
    "Grazie, la Sua richiesta è stata inviata correttamente. Attenda la conferma dalla segreteria Ambrosia";
        else die(
    "Attenzione: non è stato possibile inoltrare la richiesta.\nRitenti più tardi o contatti l'amministratore. Ci       scusiamo per il disagio.");
        
    ?>

  2. #2
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    ci sono 2 modi per fare come dici te:

    o javascript (un alert con la classica frase e il pulsante OK) e la pagina non viene mandata al server ma aspetta di essere completata

    o php in cui la pagina viene mandata al server e torna indietro....

    per compatibilità ti consiglio php, poi al limite nel farla tornare indietro php ricompleta i campi precedentemente compilati
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  3. #3
    grazie x aver risposto.. solo che non saprei proprio da dove iniziare dato che il form non l'ho fatto io
    sapresti aiutarmi? cosa dovrei aggiungere nel codice?
    grazie

  4. #4
    io son dell'idea che javascript sia piu semplice e sopratutto ti evita un tot di problemi (tipo reinviare i cambi che erano stati inseriti etc....

    semplicemente il button non e piu un sabmit ma un semlice button che richiama una funzione JS
    Codice PHP:
    <input type="button" value="Inserisci" name="invio" onclick="controllo();"/> 
    mentre il JS avrà semplicemente il controllo che in caso negativo non farà nulla, in caso positivo invierà i dati
    in questo caso controllo solo un campo...ma basta farlo x tutti ed il gioco è fatto
    Codice PHP:
    function controllo()
        {
    var 
    nome=document.form.nome.value;
    if (
    nome == "")    {
        
    window.alert('Il campo NOME è obbligatorio');
    } else {
        
    document.form.submit();

    }


  5. #5
    Dove devo inserire la parte JS? nel codice in php o nella pagina htm dentro il tag <form>? perdona la mia ignoranza in materia

  6. #6
    io per comodità creo un file function.js con tutte le funzioni js e poi lo includo all'inizio del file.....puoi metterlo dove vuoi

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.