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

    un aiuto per un form che utilizza una validazione javascript e un invio mail con php

    ciao a tutti,
    sono nuovo e parecchio inesperto su questi linguaggi e volevo chiedervi un aiuto su un form che sto scrivendo.
    avendo preso spunto da vari articoli trovati, immagino avrò commesso errori sacrileghi e spero possiate indicarmeli.
    sostanzialmente ho creato un form html per raccogliere dati che dapprima vengono controllati tramite javascript (i campi necessari e il formato della mail), dopo di che se corretti vengono inviati ed elaborati da un file php per inviarli via mail

    vi copio qui i codici (sono lunghi, scusate), forse l'errore sta nel dove inserisco il codice java, ma non saprei.
    vi ringrazio moltissimo in anticipo per qualsiasi aiuto possiate darmi.

    QUESTO è QUEL CHE C'è NEL BODY HTML:

    codice:
    <div id="container">
       <div id="content">
    
    
    
    	 <FORM name="modulo" method="post">
              <table width="400" border="0" class="Stile2">
         <tr>
           <td width="200" align="right">* Nome e Cognome
    del richiedente</td>
           <td colspan="2"><input name="nome_cognome" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">* Telefono</td>
           <td colspan="2"><input name="telefono" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">* Carica ricoperta</td>
           <td colspan="2"><select name="carica" size="1">
                                    <option></option>
    				<option>amministratore</option>
                                    <option>consigliere</option>
                                    <option>impresa/costruttore</option>
                                    <option>condomino</option>
                                    <option>altro</option>
                                  </select></td>
         </tr>
         <tr>
           <td colspan="3"></td>
          </tr>
         <tr>
           <td width="200" valign="top" align="right">La richiesta nasce da:</td>
           <td colspan="2">
            <input type="checkbox" name="per_disservizi" value="si"> Frequenti disservizi
    
            <input type="checkbox" name="per_valutazione_economica" value="si"> Valutazione economica
    
    		<input type="checkbox" name="per_difficolta_assistenza" value="si"> Difficoltà di assistenza
    
    		<input type="checkbox" name="per_altro" value="si"> Altro
    		</td>
         </tr>
         
         <tr>
           <td colspan="3"></td>
          </tr>
         <tr>
           <td width="200" align="right">Luogo di ubicazione dell'impianto:</td>
           <td colspan="2"></td>
         </tr>
         <tr>
           <td width="200" align="right">* Citt&agrave;</td>
           <td colspan="2"><input name="luogo_citta" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">* Indirizzo </td>
           <td colspan="2"><input name="luogo_indirizzo" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">Scala</td>
           <td colspan="2"><input name="luogo_scala" type="text" size="5"></td>
         </tr>
         <tr>
           <td width="200" align="right">* Intestazione offerta </td>
           <td colspan="2"><input name="intestazione" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">* Numero di piani serviti
    
            (compreso piano terra)</td>
           <td colspan="2"><input name="numero_piani_serviti" type="text" size="5"></td>
         </tr>
         <tr>
           <td width="200" align="right">Attuale manutentore dell'impianto</td>
           <td colspan="2"><input name="manutentore_attuale" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">Scadenza impegno
    
            contrattuale in corso</td>
           <td colspan="2"><input name="scad_contrattuale_incorso" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right">Indirizzo e-mail</td>
           <td colspan="2"><input name="email" type="text" size="30"></td>
         </tr>
         <tr>
           <td width="200" align="right" valign="top">Eventuale messaggio</td>
           <td colspan="2"><textarea name="messaggio" cols="22" rows="5"></textarea></td>
         </tr>
         <tr>
           <td width="200" align="right">(* campi obbligatori)</td>
           <td colspan="2"></td>
         </tr>
         <tr>
           <td width="200"></td>
           <td width="50"><input type="button" value="invia" onClick="Modulo()"></td>
           <td><input name="name" type="reset" value="cancella"></td>
         </tr>
         <tr>
           <td width="200" align="right"></td>
           <td colspan="2"></td>
         </tr>
       </table>
    
    
    
    
    <script language="javascript">
     <!--
      function Modulo(){
    
    // Variabili associate ai campi del modulo
    var nome_cognome = document.modulo.nome_cognome.value;
    var telefono = document.modulo.telefono.value;
    var carica = document.modulo.carica.value;
    var per_disservizi = document.modulo.per_disservizi.value;
    var per_valutazione_economica = document.modulo.per_valutazione_economica.value;
    var per_difficolta_assistenza = document.modulo.per_difficolta_assistenza.value;
    var per_altro = document.modulo.per_altro.value;
    var luogo_citta = document.modulo.luogo_citta.value;
    var luogo_indirizzo = document.modulo.luogo_indirizzo.value;
    var luogo_scala = document.modulo.luogo_scala.value;
    var intestazione = document.modulo.intestazione.value;
    var manutentore_attuale = document.modulo.manutentore_attuale.value;
    var numero_piani_serviti = document.modulo.numero_piani_serviti.value;
    var scad_contrattuale_incorso = document.modulo.scad_contrattuale_incorso.value;
    var email = document.modulo.email.value;
    var messaggio = document.modulo.messaggio.value;
    
    // Variabile per la validità del formato email
    var email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
    
    //Effettua il controllo sul campo nome e cognome
    if ((nome_cognome == "") || (nome_cognome == "undefined")) {
       alert("Il campo Nome e cognome è obbligatorio.");
       document.modulo.nome_cognome.focus();
       return false;
    }
    
    //Effettua il controllo sul campo telefono
    else if ((telefono == "") || (telefono == "undefined")) {
       alert("Il campo Telefono è obbligatorio.");
       document.modulo.telefono.focus();
       return false;
    }
    
    //Effettua il controllo sul campo carica
    else if ((carica == "") || (carica == "undefined")) {
       alert("Il campo Carica ricoperta è obbligatorio.");
       document.modulo.carica.focus();
       return false;
    }
    
    //Effettua il controllo sul campo città
    else if ((luogo_citta == "") || (luogo_citta == "undefined")) {
       alert("Il campo Città è obbligatorio.");
       document.modulo.luogo_citta.focus();
       return false;
    }
    
    //Effettua il controllo sul campo indirizzo
    else if ((luogo_indirizzo == "") || (luogo_indirizzo == "undefined")) {
       alert("Il campo Indirizzo è obbligatorio.");
       document.modulo.luogo_indirizzo.focus();
       return false;
    }
    
    //Effettua il controllo sul campo intestazione
    else if ((intestazione == "") || (intestazione == "undefined")) {
       alert("Il campo Intestazione offerta è obbligatorio.");
       document.modulo.intestazione.focus();
       return false;
    }
    
    //Effettua il controllo sul campo numero di piani serviti
    else if ((numero_piani_serviti == "") || (numero_piani_serviti == "undefined")) {
       alert("Il campo Numero di piani serviti è obbligatorio.");
       document.modulo.numero_piani_serviti.focus();
       return false;
    }
    
    //Effettua il controllo che il formato della mail sia valido
    else if (!email_reg_exp.test(email)) {
       alert("L'indirizzo email inserito non ha un formato valido.");
       document.modulo.email.select();
       return false;
    }
    
    //INVIA IL MODULO
    else {
       document.modulo.action = "send1.php";
       document.modulo[].submit();
    }
    
    }
     //-->
    </script>
       
        </FORM>
    
    
    
      </div>
    </div>




    E QUESTO è IL FILE send1.php:

    Codice PHP:
    <?php

    $recipient
    ="mailprova@gmail.com";
    $subject="Richiesta info per manutenzione impianto";

    $nome_cognome=$_POST["nome_cognome"];
    $telefono=$_POST["telefono"];
    $carica=$_POST["carica"];
    $per_disservizi=$_POST["per_disservizi"];
    $per_valutazione_economica=$_POST["per_valutazione_economica"];
    $per_difficolta_assistenza=$_POST["per_difficolta_assistenza"];
    $per_altro=$_POST["per_altro"];
    $intestazione=$_POST["intestazione"];
    $luogo_citta=$_POST["luogo_citta"];
    $luogo_indirizzo=$_POST["luogo_indirizzo"];
    $luogo_scala=$_POST["luogo_scala"];
    $numero_piani_serviti=$_POST["numero_piani_serviti"];
    $manutentore_attuale=$_POST["manutentore_attuale"];
    $scad_contrattuale_incorso=$_POST["scad_contrattuale_incorso"];
    $email=$_POST["email"];
    $messaggio=$_POST["messaggio"];

    {
    $resto "\n";
    $resto $resto "Richiedente: " $nome_cognome "\n";
    $resto $resto "Telefono: " $telefono "\n";
    $resto $resto "Carica: " $carica "\n";
    $resto $resto "Intestazione: " $intestazione "\n";
    $resto $resto "Città: " $luogo_citta "\n";
    $resto $resto "Indirizzo: " $luogo_indirizzo "\n";
    $resto $resto "Scala: " $luogo_scala "\n";
    $resto $resto "Numero piani serviti: " $numero_piani_serviti "\n";
    $resto $resto "Manutentore attuale: " $manutentore_attuale "\n";
    $resto $resto "Scadenza contratto: " $scad_contrattuale_incorso .  "\n";
    $resto $resto "Indirizzo e-mail: " $email "\n";
    $resto $resto "\nMessaggio: \n" $messaggio "\n\n";
    $resto $resto "IP: " $REMOTE_ADDR "\n";
    $resto $resto "HOST: " $REMOTE_HOST "\n";
    }

    $headers .= "Return-path: " $_POST["email"];
    $headers="";
    $headers .= "From: " $intestazione " <" $email ">\n";

    mail($recipient$subject$resto$headers);

    ?>

  2. #2
    scusate sono riuscito a risolvere, nel caso serva a qualcuno disponibile a spiegare come (per quel che sono in grado)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.