php+MySQL实现登录时验证登录名和密码是否正确

yipeiwu_com6年前Mysql基础

直入主题,先看php校验登录名和密码是否正确的代码:

<?php
 $servername = "服务器名";
 $username = "账户名";
 $password = "密码";
 $dbname = "数据库名";
?>
<?php
 // Session需要先启动。
 session_start();
 //判断uname和pwd是否赋值
 if(isset($_POST['uname']) && isset($_POST['pwd'])){
 $name = $_POST['uname'];
 $pwd = $_POST['pwd'];
 //连接数据库
 $conn = new mysqli($servername, $username, $password, $dbname);
 if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
 }
 //验证内容是否与数据库的记录吻合。
 $sql = "SELECT * FROM test_students_all WHERE (student_name='$name') AND (password='$pwd')";
 //执行上面的sql语句并将结果集赋给result。
 $result = $conn->query($sql);
 //判断结果集的记录数是否大于0
 if ($result->num_rows > 0) {
  $_SESSION['user_account'] = $name;
  // 输出每行数据
  while($row = $result->fetch_assoc()) {
  echo '<p>' . $row['student_nbr'] . '<br/>' . $row['student_name'] . '(' . $row['sex'] . ')' . '<br/>' . $row['class'] . '<br/>' . $row['major'].'</p>';
  // <p><img src="student_images/CLASS/STUDENT_NBR.jpg" /></p>
  echo '<p><img src="student_images/' . $row['class'] . '/' . $row['student_nbr'] . '.jpg" /></p>';
  }
 } else {
  echo "没有您要的信息";
 }
 $conn->close(); 
 }
?>
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>登录校验</title>
</head>
<body>
 <p>
 <?php
  // isset(xx) 测试xx是否设置了
  if(isset($_SESSION['user_account'])){
  echo '你好,' . $_SESSION['user_account'];
  }
  else{
  echo '游客';
  }
  //$conn->close();
 ?>
 </p>
 <form method="POST">
 <input type="text" name="uname" placeholder="用户名" />
 <br />
 <input type="password" name="pwd" placeholder="密码" />
 <br />
 <input type="submit">
 </form>
</body>
</html>

效果图:

以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。

相关文章

php下mysql数据库操作类(改自discuz)

复制代码 代码如下: <?php /* -------------------------------- System:PT book - PT小说小偷 Code: 杰少Pakey...

PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID

前言 最近在工作中又遇到了这个问题,PHP中如何获得刚插入数据的ID(或当前发布文章的ID)呢?觉得有必要整理下详细的解决方法,方便自己也给有需要的朋友们提供以帮助,那么话不多说了,来看...

PHP+Mysql实现多关键字与多字段生成SQL语句的函数

本文实例讲述了PHP+Mysql实现多关键字与多字段生成SQL语句的函数的方法。分享给大家供大家参考。具体实现方法如下: 先看实例: 复制代码 代码如下:$keyword="1 2 3"...

Linux下进行MYSQL编程时插入中文乱码的解决方案

插入中文是乱码,尝试了许多方法,比如我先把vim里设置为:set fileencoding=utf-8不起作用,后来想想也对,和vim没什么关系 然后就尝试c#代码,用Enco...

自写的利用PDO对mysql数据库增删改查操作类

前言 PDO一是PHP数据对象(PHP Data Object)的缩写。 并不能使用PDO扩展本身执行任何数据库操作,必须使用一个database-specific PDO driver...