Visualizzazione dei risultati da 1 a 8 su 8

Discussione: problema con form mail

  1. #1

    problema con form mail

    Salve ragazzi volevo chiedervi un aiuto su un form che sto usando.Il form in questione funziona a metà, cioè in realta alla mia mail arrivano solo la matà dei dati inseriti.Potreste dargli un'occhiata?

    <html>
    <head>
    </head>
    <body>

    <table border="0" width="500" cellspacing="0" cellpadding="0">
    <tr>
    <td width="100%"><div align="center"><center><table border="0" width="100%">
    <tr>
    <td align="center" valign="top" rowspan="2" width="90%" bgcolor="#F0F0F0">
    <form name="modulo" method="post" action="inviamail.php">


    <div align="center">
    <table border="0">
    <tr>
    <td colspan="2"><font color="#FF0000" face="Verdana">*</font><font color="#FF0000" face="Arial" size="1">
    dato obbligatorio</font>
    </td>
    </tr>
    <tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">
    Nome Cognome:</font>
    </td>
    <td><input type="text" name="nome" size="28"></td>
    </tr>
    <tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">nome:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">
    cognome:</font>
    </td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">
    via:</font>
    </td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">
    casa:</font>
    </td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">
    barca:</font>
    </td>
    <td><input type="text" name="nome" size="28"></td>
    </tr>







    <tr>
    <td align="right"><font color="#FF0000" face="Verdana">*</font><font face="Verdana" color="#000000">
    E-Mail:</font>
    </td>
    <td><input type="text" name="email" size="28"></td>
    </tr>
    <tr>
    <td align="right"><font face="Verdana" color="#000000">Indirizzo:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr>
    <tr>
    <td align="right"><font face="Verdana" color="#000000">Città:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr>

    <tr>
    <td align="right"><font face="Verdana" color="#000000">Città:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font face="Verdana" color="#000000">Città:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font face="Verdana" color="#000000">Città:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr><tr>
    <td align="right"><font face="Verdana" color="#000000">Città:</font></td>
    <td><input type="text" name="nome" size="28"></td>
    </tr>




    </table>
    <table border="0">
    <tr>
    <td align="center"><font color="#000000" face="Verdana">

    Spazio per richiesta informazioni:

    <textarea name="note" rows="3" cols="38">

    </textarea>
    </font></td>
    </tr>
    <tr>
    <td align="center">




    <font face="Verdana" size="2">Accetti le condizioni?: SI <input type="radio" name="trattamento_dati" value="accetto" checked>
    NO <input type="radio" name="trattamento_dati" value="non_accetto">
    </font></td>
    </tr>
    </table>
    </div>


    <font color="#000000" face="Arial">
    <input type="submit" value="Invia">



    </font></p>
    </form>
    </td>
    </tr>
    </table>
    </center></div></td>
    </tr>
    </table>



    </body></html>


    php

    <?php
    $email=$_POST['email'];

    #######################################
    # IMPOSTAZIONI DA CONFIGURARE #
    #######################################

    //(1) indirizzo email del destinatario del modulo
    $destinatario = "lollo37@msn.com";

    //(2) indirizzo email del mittente, campo FROM
    // non toccare se desiderate che l'indirizzo email inserito nel modulo sia
    // riportato nel campo DA del messaggio che sarà ricevuto.
    // Se invece desiderate un campo fisso annullare la prima riga e abilitare
    // la seconda inserendo la dicitura desiderata (per annullare mettere //
    // all'inizio della prima riga e per abilitare togliere // dalla seconda riga)
    $nome_mittente = "$email";
    // $nome_mittente = "Dal Modulo";

    //(3) oggetto del messaggio
    $oggetto_email = "Modulo inviato dal sito ....";

    //(4) se si vogliono rendere tutti i campi NON OBBLIGATORI impostare su "y".
    // (valori possibili: "y" e "n")
    $all_free = "n";

    //(5) se avete messo "n" al punto (4) inserire tra virgolette, separati
    // da virgola, i nomi dei campi da rendere OBBLIGATORI
    // Esempio: $campi_req = array("nome","telefono","via");
    $campi_req = array("nome","email");

    //(6) controllo validità del campo email. (valori possibili: "y" e "n")
    $obbligo_email = "y";

    //(7) obbligare l'utente ad accettare le condizioni.
    // (valori possibili: "y" e "n")
    $accetta_condizioni = "n";

    //(8) URL della pagina di ringraziamento
    $pagina_grazie = "http://www.grazie.it";

    //(9) URL della pagina errore campi vuoti
    $pagina_error_empty = "http://www.tuo_sito.tld/errore_campi_vuoti.htm";

    //(10) URL della pagina errore email
    $pagina_error_email = "http://www.tuo_sito.tld/errore_email.htm";

    //(11) URL della pagina errore condizioni non accettate
    $pagina_error_condizioni = "http://www.tuo_sito.tld/errore_condizioni.htm";

    //(12) URL della pagina errore invio non autorizzato (mancanza di referer)
    $pagina_error_referer = "http://www.tuo_sito.tld/errore_referer.htm";

    #######################################
    # FINE IMPOSTAZIONI DA CONFIGURARE #
    #######################################

    //ora e data
    $ora = date ("H:i:s");
    $data = date ("d/m/Y");

    //intestazione email che arriva al destinatario
    $corpo = "
    Modulo inviato il $data alle ore $ora
    Riepilogo dati:\n\n";

    //============== NON TOCCARE NULLA OLTRE QUESTA RIGA ==================\


    ########### CODICI ###########

    //variabili per rendere lo script compatibile anche con la versione PHP 4.2 e maggiori
    if(!isset($_SERVER) OR !$_SERVER OR !is_array($_SERVER) OR count(array_diff($_SERVER, $HTTP_SERVER_VARS))){
    $_POST = &$HTTP_POST_VARS;
    }

    //prende IP ADDRESS
    if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

    if ($_SERVER["HTTP_X_FORWARDED_FOR"] == "") {

    $ipnumb = getenv("REMOTE_ADDR");

    }else {

    $ipnumb = getenv("HTTP_X_FORWARDED_FOR");

    }

    } else {

    $ipnumb = getenv("REMOTE_ADDR");
    }
    ###################################

    //controllo referer
    if(empty($_SERVER["HTTP_REFERER"])){

    header ("Location: $pagina_error_referer");
    exit();

    }

    ########### CONTROLLO DEI CAMPI ###########
    $control_campi = 0;

    if($all_free != "y"){

    foreach($_POST as $key => $valore){

    if(in_array($key,$campi_req)){

    if(trim($valore) == ""){

    $control_campi++;

    }

    }

    }

    } else {

    $control_campi = 0;

    }

    ########### CONTROLLO EMAIL ###########
    $control_email = 0;

    if($obbligo_email == "y"){

    if(isset($_POST['email'])){

    if(!eregi("^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9_-])+.)+[a-z]{2,6}$", $_POST['email'])){

    $control_email++;

    }

    } else {

    $control_email = 0;

    }

    }

    ########### CONTROLLO CONDIZIONI ###########
    $control_condizioni = 0;

    if($accetta_condizioni == "y"){

    if(isset($_POST['trattamento_dati']) && $_POST['trattamento_dati'] == "accetto"){

    $control_condizioni = 0;

    } else {

    $control_condizioni ++;

    }

    }

    ########### INVIO EMAIL ###########
    if($control_campi == 0){

    if($control_email == 0){

    if($control_condizioni == 0){

    foreach($_POST as $key => $valore){

    $key = ucfirst(stripslashes(trim($key)));
    $valore = stripslashes(trim($valore));
    $key = str_replace("_"," ",$key);

    if(trim($valore) == "") $valore = "Non compilato";

    $corpo .= $key .": ". $valore ."\n\n";

    }

    $corpo .= "Numero IP: $ipnumb"."\n";

    $corpo .= "_________________________________________________ ___________ \n\n

    ";


    // invio e-mail
    // Header Mail
    $headmail.="From: $nome_mittente <$nome_mittente>\n";
    $headmail.="Return-Path: $nome_mittente\n";
    $headmail.="User-Agent: Php Mail Function\n";
    $headmail.="X-Accept-Language: en-us, en\n";
    $headmail.="MIME-Version: 1.0\n";
    $headmail.="X-Priority: 1 (Highest)\n";
    $headmail.="Content-Type: text/plain; charset=ISO-8859-1; format=flowed\n";
    $headmail.="Content-Transfer-Encoding: 7bit\n";

    ini_set('sendmail_from', "$destinatario");
    mail("$destinatario", "$oggetto_email", "$corpo", "$headmail");

    header ("Location: $pagina_grazie");

    } else {

    header ("Location: $pagina_error_condizioni");

    }

    } else {

    header ("Location: $pagina_error_email");

    }

    } else {


    header ("Location: $pagina_error_empty");

    }

    ?>

  2. #2
    non ho visto tutta la funzione php ma dal codice html hai messo a quasi tutti gli input il name="nome"


  3. #3
    Si ho fatto cosí perché sulle istruzioni del modulo c'era scritto che se si vuole creare qualche nuovo colampo basta usare l'input nome,quindi ho provato acreare nuovi campi ma quando invio dei campi creati col nome mi appare solo l'ultimo

  4. #4
    ho dato un'occhiata al codice php...se cambi i nomi dovrebbe funzionare penso
    fammi sapere

  5. #5
    Ho fatto la prova e cambiando i nomi va
    Grazie 1000 per l'aiuto, se non è osare troppo vorrei chiederti un'altro consiglio:in questo modulo dovrei aggiungere una voce tipo livello inglese e fare una selezione multipla che si apre cliccando con sufficiente,buono o ottimo.Come posso integrarla in questo php?

  6. #6
    in html fai una select

    codice:
    <select name="inglese">
    <option value="sufficiente">sufficiente</option>
    <option value="buono">buono</option>
    <option value="ottimo">ottimo</option>
    </select>
    guarda se la capisce da solo altrimenti scrivi


  7. #7
    Ho provato e lo riconosce da solo non so veramente come ringraziarti sei stato gentilissimo e disponibilissomo grazie 1000

  8. #8
    prego


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.