0

I have a contact form that WORKS FINE, the only problem is that the sender is an e-mail address like anonymus@name-hosting.com, and I would like it to be something like the e-mail address of the website.. I hope I was clear... This is my code:

    <?php

// Site Info
$site_name  = 'Azienda Agricola';
$site_email = 'mail@my-site.it'; 

if(isset($_POST['reservation_email'])){
    $reservation_name         = $_POST['reservation_name'];
    $reservation_address      = $_POST['reservation_address'];
    $reservation_email        = $_POST['reservation_email'];
    $reservation_adults       = $_POST['reservation_adults'];
    $reservation_children     = $_POST['reservation_children'];
    $reservation_arrival      = $_POST['reservation_arrival'];
    $reservation_departure    = $_POST['reservation_departure'];
    $reservation_phone        = $_POST['reservation_phone'];
    $reservation_requirements = $_POST['reservation_requirements'];
    $contact_email = $reservation_email;
    $from_email =  $reservation_email;

    $reservation_name         = "Nome: $reservation_name <br />";
    $reservation_address      = "Indirizzo: $reservation_address <br />";
    $reservation_email        = "Email:  $reservation_email <br />";
    $reservation_adults       = "Adulti: $reservation_adults <br />";
    $reservation_children     = "Bambini: $reservation_children <br />";
    $reservation_arrival      = "Data arrivo: $reservation_arrival <br />";
    $reservation_departure    = "Data partenza: $reservation_departure <br />";
    $reservation_phone        = "Numero telefono: $reservation_phone <br />";
    $reservation_requirements = "Richieste speciali: <br /> $reservation_requirements <br />";

    $to = $site_email;
    $subject = "Request from ".$site_name;
    $header  = 'MIME-Version: 1.0' . "\r\n";
    $header .= 'Content-type: text/html; charset=utf-8' . "\r\n";
    $header .= 'From:'.$reservation_email. " \r\n";
    $message = "
        Hai ricevuto una nuova richiesta di prenotazione! <br />
        $reservation_name
        $reservation_address
        $reservation_email
        $reservation_adults
        $reservation_children
        $reservation_arrival
        $reservation_departure
        $reservation_phone
        $reservation_requirements
    ";

    // Send Mail
    if(@mail($to,$subject,$message,$header)) {
        $send = true;
    } else {
        $send = false;
    }

    if(isset($_POST['ajax'])){
        if($send)
            echo 'success';
        else
            echo 'error';
    }
}

I hope someone can help me, thank you in advance. F.

Morgana
  • 19
  • 5

2 Answers2

0

try adding 5th parameter to your email function like: "-f $reservation_email".

So something like:

mail($to,$subject,$message,$header, "-f $reservation_email");
Dexa
  • 1,641
  • 10
  • 25
0

When you use the mail() function, the message is sent by a pre configured e-mail address in the server. If you need it to be sent by a specific e-mail address, maybe you should use SMTP authentication, for exemple using PHPMailer. Try to "say" another address in header with parameter "From" could increase the possibility of the message being classified as spam. Try it: http://phpmailer.worxware.com/index.php?pg=examplebsmtp

alberjoe
  • 88
  • 6