当前位置: 代码迷 >> JavaScript >> 多级登录表单不起作用.. 提交时
  详细解决方案

多级登录表单不起作用.. 提交时

热度:99   发布时间:2023-06-05 11:54:26.0

不知道为什么这个表格不起作用......虽然我在输入用户名和密码后提交了这个......提交后它不显示任何东西

<?php 
 include "connect_to_mysql.php";
 if(isset($_POST['log']))
 {
 $user= $_POST['user'];
 $pass=md5($_POST['pass']);

   $sql=mysql_query("select* from login where user= '$user' AND pass='$pass'    LIMIT 3 ");
  $data=mysql_fetch_array($sql);

  $UserName= $data['user'];   
  $Password= $data['pass'];
  $type= $data['type'];
  $name= $data['name'];

  if($user==$username && $pass==$password){
  session_start();
  $_SESSION['name']=$name;
  if($type=='admin')
  {
         header("location: index.php");
  }
  else if($type=='vender1')
 {
         header("location: vender1.php");
  }

 }




  else {
        echo 'That information is incorrect, try again <a href="index.php">Click Here</a>';
    exit();
  }
  }
  ?>

数据库是手动创建的,登录表有 5 列名为 id、name。 用户,通行证,类型。

     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
   <head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <title> Log In </title>
   <link rel="stylesheet" href="style.css" type="text/css" media="screen" />
   </head>

   <body>
   <br /><br /><br /><br /><br /><br /><br /><br />
   <br /><br /><br /><br />
   <div id="mainWrapper">
   <?php include_once("header.php") ?></div>
   <div id="pageContent"><br /><br /><br />
   <div align="right" style="margin-right:24px; color:#FF0000">
   <h2>Please Log In To Manage the Inventary</h2>
   <br /><br />
   <form id="form" name="form" method="post" action="login.php">
     <h2 style="padding-right:200px;">User Name:</h2>
       <input name="user" type="text" id="user" size="40"   style="height:20px;" />
     <br /><br />
     <h2 style="padding-right:210px;">Password:</h2>
     <input name="pass" type="password" id="pass" size="40" style="height:20px;" />
    <br />
    <br />
    <br />

      <input type="submit" name="button" id="button" value="Log In" />

    </form>
   <p>&nbsp; </p>
   </div>
   <br />
   <br />
   <br />
   </div>

    </div>
     </body>
     </html>

我被困在这里..请让我摆脱这个

您的查询出错,您正在编写select*但应该有一个像这样的空格select *

$sql = mysql_query("select * from login where user= '$user' AND pass='$pass' LIMIT 3 ") or die(mysql_error());

编辑

你也必须把session_start(); 作为您代码的第一行...否则它将无法正常工作。

所以把它作为你的第一行代码

session_start();
error_reporting(E_ALL); // to see if there is error in code

而且 PHP 变量名是,

PHP 中的变量由美元符号后跟变量名称表示。 变量名区分大小写

所以请改变

if($user==$username && $pass==$password)

if($user==$UserName && $pass==$Password)

运行以下代码,

   $sql=mysql_query("select* from login where user= '$user' AND pass='$pass'    LIMIT 3 ");
  $data=mysql_fetch_array($sql);

  $UserName= $data['user'];   
  $Password= $data['pass'];
  $type= $data['type'];
  $name= $data['name'];

  if($user==$username && $pass==$password){
  session_start();
  $_SESSION['name']=$name;
  if($type=='admin')
  {
         header("location: index.php");
  }
  else if($type=='vender1')
 {
         header("location: vender1.php");
  }

 }




  else {
        echo 'That information is incorrect, try again <a href="index.php">Click Here</a>';
    exit();
  }
  ?>

您还没有在表单中使用 $_POST['log'] ....

在您的代码中,您使用了if(isset($_POST['log'])) ,我已将其删除,因为您没有在表单中使用“log”。

  相关解决方案