duandi8613 2015-03-24 08:51 采纳率: 100%
浏览 9
已采纳

登录系统无法正常工作

I have created a simple log in page but the code isn't working. I tried checking console but it was not giving me any errors. The out put is "0 results". I tried to correct it but i couldn't. Please see the code for your reference: Could you guys tell me the error?

<html>
    <head>
        <title>Login Page</title>
    </head>

    <body>
        <?php
            include ('conn.php');

            $un = isset($_POST['name']);
            $up = isset($_POST['pass']);

            $query = "select * from login where l_name = '$un' AND l_pass = '$up'";
            $result = mysqli_query($conn, $query);

            $count = 0;

            if(mysqli_num_rows($result) > 0) {

                while ($row = mysqli_fetch_assoc($result)) {
                    $name = $row['l_name'];
                    $pass = $row['l_pass'];

                    if ($un == $name && $up == $pass) {
                        $count = 1;
                    }

                    if($count==1 && !empty($un) && !empty($pa))
                     echo"Your Successfully Logged";
                     else
                     echo"You Failed";

                }

            }

            else{
                echo "0 result";



        ?>

        <form name="form1" method="POST">
            <fieldset>
            <legend> Log in </legend>
            <label> Username: <input type="text" name="name" />
            <label> Password :<input type="text" name="pass" /> 
        </fieldset>
        <input type="submit" name="submit" value="Submit">
        </form>
    </body>
</html>
  • 写回答

4条回答 默认 最新

  • duanluanlang8501 2015-03-24 09:04
    关注

    A more robust code will be:

    <html>
    <head>
        <title>Login Page</title>
    </head>
    
    <body>
        <?php
            include ('conn.php');
    
            $un = isset($_POST['name']) ? $_POST['name'] : '';
            $up = isset($_POST['pass']) ? $_POST['pass'] : '';
    
           if(empty($un) || empty($up))
           {
              echo 'Please fill in the name and password fields';
           }
           else
           {
               $un = mysqli_real_escape_string($conn, $un);
               $up = mysqli_real_escape_string($conn, $up);
    
               $query = "select * from login where l_name = '$un' AND l_pass = '$up'";
               $result = mysqli_query($conn, $query);
    
               $count = 0;
    
               if(mysqli_num_rows($result) > 0) {
    
                  while ($row = mysqli_fetch_assoc($result)) {
                      $name = $row['l_name'];
                      $pass = $row['l_pass'];
    
                      if ($un == $name && $up == $pass) {
                         $count = 1;
                      }
    
                      if($count==1){
                        echo"Your Successfully Logged";
                      }
                     else{
                      echo"You Failed";
                     }
                  }
               }
    
               else{
                echo "0 result";
               }
            }
        ?>
    
        <form name="form1" method="POST">
            <fieldset>
            <legend> Log in </legend>
            <label> Username: <input type="text" name="name" />
            <label> Password :<input type="text" name="pass" /> 
        </fieldset>
        <input type="submit" name="submit" value="Submit">
        </form>
    </body>
    

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用