无法完成简单的联系表格

时间:2017-10-03 09:33:13

标签: php contact-form

我是一名新手编码器,正在开发我的第一个php项目。一个网站有一个简单的php contactform我试图完成但我一直遇到意外错误。我现在尝试了很多东西,我在Stackoverflow上发现并自己解决了一些错误,但我现在感到很茫然。我希望有人会审查我的代码,以帮助我看到我在这里缺少的东西。任何让我重回正轨的帮助都非常感谢。

编辑:尝试更多关于主题

的帖子

我希望这个脚本做什么:
- 制作姓名,电子邮件和消息必填字段
- 使表格安全,防止恶意。这就是我在Securing a contact form script

之后添加check_input函数的原因

截至目前的完整代码:

<?php

$name = isset($_POST['name']) ? check_input($_POST['name']) : ""; 
$email = isset($_POST['email']) ? check_input($_POST['email']) : ""; 
$company = isset($_POST['company']) ? check_input($_POST['company']) : ""; 
$message = isset($_POST['message']) ? check_input($_POST['message']) : ""; 
$from = 'From: ZZZ Reactieformulier';
$to = 'emailadres@mailserver.nl';
$subject = 'Reactie via website';


$body = "Afzender: $name\n E-mailadres: $email\n Bedrijfsnaam: $company\n 
Bericht: $message";

function check_input($data){
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}


if ($_POST['submit']) {
        if ($name !='' && $email !='' && $message !='') {
            if (mail ($to, $subject, $body, $from)) {
                echo '<p>Uw bericht is succesvol verzonden!</p>';
            } else {
                echo '<p>Er is iets misgegaan, probeer het alstublieft 
                         opnieuw</p>';
            }
        } else {
            echo '</p>De velden Naam, E-mail en Bericht zijn verplicht</p>';
        }

    }   
?>

1 个答案:

答案 0 :(得分:1)

您的三元运营商错了:

$name = isset($_POST['name']) ? check_input($_POST['name']);

应该是

$name = isset($_POST['name']) ? check_input($_POST['name']) : "";