PHP检查用户是否输入了输入表单

Jaa*_*älä 0 php

如何检查用户是否输入了输入表单并说明是否有错误?我试着把

if (!isset($_POST['email'])) {
  die('You have to give an email address.');
}
Run Code Online (Sandbox Code Playgroud)

但问题是,如果用户第一次进入页面并且没有给出任何输入,它也会出现.XHTML如下:

<form action=<?php echo SITEADDRESS.'register.php'?> method="post">
 <p>
  <label for="email">Sähköposti:</label>
  <input type="text" id="email" name="email" />
  <label for="password">Salasana:</label>
  <input type="password" id="pwd" name="pwd" />
 </p>
 <p>
  <input type="submit" value="Rekisteröidy" />
 </p>
</form> 
Run Code Online (Sandbox Code Playgroud)

Sar*_*raz 5

但问题是,如果用户第一次进入页面并且没有给出任何输入,它也会出现.XHTML如下:

用户单击submit按钮时需要这样做,因此您的代码应如下所示:

if (isset($_POST['submit'])) {
  if (empty($_POST['email'])) {
    die('You have to give an email address.');
  }  
}
Run Code Online (Sandbox Code Playgroud)

现在,上述代码仅在用户单击提交按钮时执行,而不像他在不单击按钮的情况下访问页面时执行.因此,上述代码仅在用户单击提交按钮后执行.

您应该为您的提交按钮指定名称:

<input type="submit" value="Rekisteröidy" name="submit" />
Run Code Online (Sandbox Code Playgroud)

注意:die您可以显示消息并继续显示您的表单,而不是使用:

if (isset($_POST['submit'])) {
  if (empty($_POST['email'])) {
    echo 'You have to give an email address.';
  }  
}
Run Code Online (Sandbox Code Playgroud)