PHP的形式处理器不工作(PHP form processor not working)

2019-10-23 11:07发布

我刚开始学习PHP的时间不长,和我目前正在建设一个“联系我们”的形式,将用户输入发送到我的邮箱。 我一直在这几天想我会弄清楚的,但我没有得到它。 我想也能收到我的电子邮件用户的输入,同时还能够检测到用户的IP地址。 当我提交表单,我收到的所有其他输入,但尽管我使用“本地主机”的IP地址。

我与尝试<input type="hidden" name="message" value="<?php echo $_SERVER['REMOTE_ADDR']; ?>">但是我在网上读到,这是更好地做到这一点,而不<input type="hidden">和刚刚处理的形式处理器脚本的一切。 烦请帮我这个。

<?php
$emailError = "";


$messageError = "";




function getUserIp(){

    $client = $_SERVER['HTTP_CLIENT_IP'];

    $forward = $_SERVER['HTTP_X_FORWARD_FOR'];

    $remote = $_SERVER['REMOTE_ADDR'];


    if(filter_var($client, FILTER_VALIDATE_IP)) {

         $ip = $client;

    }elseif(filter_var($forward, FILTER_VALIDATE_IP)) {

         $ip = $client;

    }else{

        $ip = $remote;

    }

 return $ip;

}





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

    //declares variable
     $email = $_POST["email"];

    $subject = $_POST["subject"];

    $message = $_POST["message"];

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

    $emailError = "Please enter your email";

  }

  if(empty($_POST['subject'])){

    $subjectError = "Please enter a subject?";

  }
}






if(!empty($_POST['email']) && !empty($_POST['subject'])){

    // Send the email
    $to = "you@yourdomain.com";

    $email = "From: $email";

    $subject = "Subject: $subject";

    $message = "$message" . "\n\n\n==-   Sent from the website with IP Address: " . $ip . "   -==";;

    $headers = "From: $email,";

    $send_contact=mail($to,$email,$subject,$message,$headers);

    header("Location: domain");
}


?>

Answer 1:

下面更改部分 -

if(!empty($_POST['email']) && !empty($_POST['subject'])){

        // Send the email
        $to = "you@yourdomain.com";
        $ip =getUserIp();

        $email = "From: $email";

        $subject = "Subject: $subject";

        $message = "$message" . "\n\n\n==-   Sent from the website with IP Address: " . $ip . "   -==";;

        $headers = "From: $email,";

        $send_contact=mail($to,$email,$subject,$message,$headers);

        header("Location: domain");
    }


文章来源: PHP form processor not working
标签: php html forms