尝试构建两步登录表单时未定义索引(PHP)

时间:2019-02-27 13:07:15

标签: php html validation logging isset

在将此问题标记为重复之前,请确保它是同一个问题,因为我在整个stackoverflow上搜索了该问题,但是所有答案我都没有发现对我有用,

我正在尝试建立一个类似于gmail的两步登录表单

这样,在第一步中,用户将输入他或她的电子邮件地址,然后在第二步中,该电子邮件地址将显示在表单顶部,然后在其下,将要求他输入密码

<!DOCTYPE html>
<html lang="en" >
<head>
  <meta charset="UTF-8">
  <title>2 step login</title>
  <link rel="stylesheet" href="css/style.css">
</head>
<body>
  <div class="container-login">
    <div class="avatar-user">
      <span class="avatar-anonymous avatar-visible"></span>    
      <img src="eu.png" alt="" class="avatar-img "/>
    </div>

    <div class="data-user-find">
      <p class="user-email"><?php echo "$email" ;?></p>
    </div>

    <form action="" class="form-login">
      <div class="step-login step-one">
        <input name="email" type="email" class="input-text"/>
        <input type="button" class="btn next-step" value="Next">
      </div> 

      <div class="step-login step-two">
        <input type="text" class="input-text"/>
        <input type="submit" class="btn" value="Login">
      </div>
    </form>

    <script  src="js/index.js"></script>    
    <?php $email = $_POST["email"]; ?>
</body>
</html>

我尝试过此操作不起作用,我不断收到错误消息

  

(未定义索引:第54行中C:\ xampp \ htdocs \ 2step \ index.php中的电子邮件

请某人帮助我

2 个答案:

答案 0 :(得分:0)

这应该有帮助:

if(isset($_POST['email']){
   $email = $_POST['email'];
}

答案 1 :(得分:0)

 <input name="email" type="email" class="input-text"/>
      <input type="button" class="btn next-step" value="Next">
    </div>

这不是“提交”按钮,您确定您的值在第一次单击按钮时就达到了PHP代码吗?

尝试:

 <input name="email" type="email" class="input-text"/>
      <input type="submit" class="btn next-step" value="Next">
    </div>