正确的PHP联系表单语法?

时间:2015-06-14 23:24:58

标签: php forms validation

我正在尝试关注here的PHP联系表单教程! 看起来很简单,我对PHP来说是全新的。但是,在运行我的项目时,我得到了很多"注意"消息和错误!

通过包围issets

中的大多数变量,我设法解决了很多问题
if(isset($_POST['name'])){ $name = $_POST['name'];}
if(isset($_POST['email'])){$email = $_POST['email'];}
if(isset($_POST['phone'])){$phone = $_POST['phone'];}
if(isset($_POST['message'])){$message = $_POST['message'];}
if(isset($_POST['human'])){$human = intval($_POST['human']);}
if(isset($_POST['from'])){$from = 'Página Web';}
if(isset($_POST['to'])){$to = 'bla@bla.com';}
if(isset($_POST['name'])){$subject = 'Mensaje de Página Web';}
if(isset($_POST['name'])){$body = "De: $name\n Teléfono: $phone\n E-Mail:   $email\n Mensaje:\n $message";}

但是,我仍然会收到这些令人讨厌的通知:

Screenshot

第16行是:

if ($_POST["submit"]) {

其余的例如在以下行中找到:

<div class="col-sm-10">
        <textarea class="form-control" rows="4" name="message"><?php echo htmlspecialchars($_POST['message']);?></textarea>
        <?php echo "<p class='text-danger'>$errMessage</p>";?>
</div>

即使这些变量在顶部声明。

如何修复最高通知和&#34;未声明的变量&#34;错误?我已经尝试查找其他教程,但他们似乎也这样做,忽略了issets(并使我的Netbeans感到不安和充满警告!)并使用相同的语法。

非常感谢帮助。

1 个答案:

答案 0 :(得分:0)

第一次加载表单时,$_POST将不会填充任何内容。尝试更改

if ($_POST["submit"]) {

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

确定表格是否实际提交并相应地继续。