Visualizzazione dei risultati da 1 a 3 su 3

Discussione: strana mail da form

  1. #1
    Utente di HTML.it L'avatar di ravint
    Registrato dal
    Jul 2000
    Messaggi
    332

    strana mail da form

    Ciao....

    ho un formmail con il controllo capcha, all'interno dello script di configurazione c'e' questo codice (premeto che funziona tutto bene):

    Codice PHP:
    <?php
    session_start
    ();
         
    $_SESSION['email'] = urldecode($_POST['email']);
          
    $_SESSION['name'] = urldecode($_POST['name']); 
           
    $_SESSION['citta'] = urldecode($_POST['citta']); 
            
    $_SESSION['nazione'] = urldecode($_POST['nazione']); 
        
    $_SESSION['telefono'] = urldecode($_POST['telefono']);
       
    $_SESSION['subject'] = urldecode($_POST['subject']);
      
    $_SESSION['comments'] = urldecode($_POST['comments']);
     
    $_SESSION['user_code'] = urldecode($_POST['user_code']);
                   
    $subject urldecode($_POST['subject']);

    ?>

    <?php
                  
    require('formcaptcha.inc.php');

                 
    //validate email function 

                   
    function validate_email($email)
                  {

                     
    // Create the syntactical validation regular expression
                     
    $regexp "^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$";

                    
    // Presume that the email is invalid
                    
    $valid 0;

                    
    // Validate the syntax
                    
    if (eregi($regexp$email))
                    {
                      list(
    $username,$domaintld) = split("@",$email);
                    
    // Validate the domain
                      
    if (getmxrr($domaintld,$mxrecords))
                      
    $valid 1;
                     } else {
                               
    $valid 0;
                            }

                     return 
    $valid;

                 }

             
    $email $_SESSION['email'];

             if (
    validate_email($email))
               {
                  echo 
    "

    "
    ;
                }else{
                      echo 
    "Inserisci una email valida!

    "
    ;
                      
    redirect();
                     }

     
    // redirect the user
                
    function redirect()
                  {
                    echo 
    "Attendere prego.... <img src=\"waiting.gif\" alt=\"waiting\"/>

    "
    ;
                    echo 
    "<meta http-equiv=\"refresh\" content=\"10;url=redirect.php\"/></div>";
                    exit();
                   }
     
    //test for empty fields
     
    if (empty($_SESSION['name']))
        {
              echo 
    "<div>Attenzione!!! devi inserire il tuo nome... 

    "
    ;
             
    redirect();
        }

     if (empty(
    $_SESSION['subject']))
        {
              echo 
    "<div>Attenzione!!! devi inserire un oggetto... 

    "
    ;
              
    redirect();
        }



     if (empty(
    $_SESSION['email']))
        {
              echo 
    "<div>Attenzione!!! devi inserire un indirizzo email... 

    "
    ;
              
    redirect();
        }

    if (empty(
    $_SESSION['telefono']))
        {
              echo 
    "<div>Attenzione!!! devi inserire un  numero di telefono... 

    "
    ;
              
    redirect();
        }
        
     if (empty(
    $_SESSION['citta']))
        {
              echo 
    "<div>Attenzione!!! devi inserire una citt&agrave;... 

    "
    ;
              
    redirect();
        }
        
    if (
    strlen($_SESSION['comments']) > 300)
        {
             echo 
    " Attenzione!!! il limite massimo sono 300 caratteri... 

    "
    ;
             
    redirect();
        }

    if (empty(
    $_SESSION['comments']))
       {
              echo 
    "<div>Attenzione!!! devi inserire un messaggio... 

    "
    ;
             
    redirect();
       }


     
    // captcha code 

    if (PhpCaptcha::Validate($_SESSION['user_code'])) {


       echo 
    "<div>Grazie ".$_SESSION['name'].", per averci contattato
    "
    ;

       echo 
    "Questo &egrave; ci&ograve; che hai inviato  
    "
    ;

       echo 
    "Email: ".$_SESSION['email'].
    "
    ;
       
       echo 
    "Citta: ".$_SESSION['citta'].
    "
    ;
       
       echo 
    "Nazione: ".$_SESSION['nazione'].
    "
    ;
       
       echo 
    "Telefono: ".$_SESSION['telefono'].
    "
    ;

       echo 
    "Nome e Cognome: ".$_SESSION['name'].
    "
    ;

       echo 
    "Oggetto: ".$_SESSION['subject'].
    "
    ;

       echo 
    "Messaggio: " .$_SESSION['comments'].
    "
    ;

       echo 
    "Codice di sicurezza inserito: ".$_SESSION['user_code'].
    "
    ;

       echo 
    "Attendi qualche istante stai per essere reindirizzato ...<img src=\"waiting.gif\" alt=\"waiting\"/>

    "
    ;

       echo 
    "<meta http-equiv=\"refresh\" content=\"10;url=http://www.miosito.it/redirect.html\"/></div>";

    // Send mailuser set

       
    $mailuser = ('mailcontatto@miosito.it');
       
       
       
    // To send HTML mail, the Content-type header must be set
       
       
    $headers .= 'E-mail inviata da: '.$email.  "\r\n";
       
    $headers .= 'Nome e Cognome: '.$name.  "\r\n";
       
    $headers .= 'Citta: '.$citta.  "\r\n";
       
    $headers .= 'Nazione: '.$nazione.  "\r\n";
       
    $headers .= 'Telefono: '.$telefono.  "\r\n";
       
    $mail_body 'Messaggio inviato: '$_SESSION['comments']. "\r\n"
       
    $mail_body.= $headers;
       
    //wrap the email text every 200 characters
       
    $mail_body wordwrap($mail_body200"\n"true);
       
    mail ($mailuser$subject$mail_body);
       
    //if all is well destroy the session
       
    session_destroy();
    }
     else
        {

             echo 
    "<div>Attenzione, hai inserito un codice errato... 


             Attendere prego ... <img src=\"waiting.gif\" alt=\"waiting\"/>

    "
    ;
             echo 
    "<meta http-equiv=\"refresh\" content=\"15;url=redirect.php\"/></div>";

        }

    ?>

    quando un utente compila il modulo inserisce l'email e invia il modulo, a me arriva una mail dal mio server tipo: anonimus@mioserve.com e non dall'utente che ha inviato il form.

    forse manca un controllo sulla stringa di chi invia il form???

  2. #2

    Re: strana mail da form

    Originariamente inviato da ravint
    Ciao....

    quando un utente compila il modulo inserisce l'email e invia il modulo, a me arriva una mail dal mio server tipo: anonimus@mioserve.com e non dall'utente che ha inviato il form.

    forse manca un controllo sulla stringa di chi invia il form???
    È giusto che sia così, chi ti invia la mail non è l'utente che compila il form, bensì il server stesso, sotto richiesta dell'utente.
    Non penso si possa modificare tale comportamento, ed è GIUSTO CHE SIA COSÌ. Infatti, altrmenti, io potrei spacciarmi per chi mi pare, mi basterebbe mettere sul mio sito un form, dal quale magari invio e-mail spacciandomi per qualcun altro, senza che l'ignaro [o gli ignari] destinatari[o] possa[no] accorgersi di nulla.

  3. #3
    Utente di HTML.it L'avatar di ravint
    Registrato dal
    Jul 2000
    Messaggi
    332
    mah e' strano perchè sul codice c'e' scritto la mia mail cioe' la mail dove verra recapitata la richiesta che e' stata compilata sul form....
    Tuttavia in altri form che avevo una volta compilato il form ed inviato, quello che era stato scritto sul form arrivava con la mail di chi lo aveva compilato cioe' dalla mail che era stata inserita sul form....
    almenoche e' come dici te ma il codice era impostato in un modo che era come se ti arrivasse direttamente da chi lo compilava..... non so se mi sono spiegato bene....

    che ne dici.????

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.