用PHP+JS+MYSQL实现用户登陆验证,的具体步骤是怎么样的呢

用PHP+JS+MYSQL实现用户登陆验证,的具体步骤是怎么样的呢,第1张

第一次学PHP就是做这个验证

html做个表单,

当表单onsubmit=return check();调用自写js来判断用户名密码是否为空,

如果是空就alert不能为空,然后return false;相反则return true;

而接收的PHP也要验证是否为空,如果严谨点还要对提交的数据进行过滤,防止sql注入。

然后php再根据提交的数据搜MYSQL,如果用户名和密码都相同时,echo 登录成功,相反则登录失败

<html>
<script>
function check(obj){
 with(obj){
     if((uservalue+"")length <= 0){
          alert("用户名不能为空");
          return false;
     }else if((pwdvalue+"")length <= 0){
     
         alert("用户名不能为空");
         return false;
     }else{
         return true;
     }
 }
}
</script>
<body>
  <form action="checkphp" method="post" onsubmit="return check(this)">
    <input type="text" name="user" value="">
    <input type="password" name="pwd" value="">
    <input type="submit" name="submit" value="登录">
    <input type="cancel" name="cancel" value="取消">
  </form>
</body>
</html><php
$conn = mysql_connect( "数据库地址", "数据库用户名", "密码" );
mysql_query("set names utf8");
mysql_select_db( "数据库名" );
function inject_check($sql_str){     
return preg_match("/select|insert|update|delete|\'|\/\|\|\\\/|\\/|union|into|load_file|outfile|%|eval|=|and|'|;|exec|count/i", $sql_str);    // 进行过滤
}
if(!empty($_POST)){
foreach($_POST as $key => $value){
if(inject_check($value)){
exit ('<script>alert("地址栏输入发现有非法字符,请重新输入!");historygo(-1);</script>');
die ();
}
}
}
$res = mysql_query("SELECT count() as m from `表名` where 用户名='${_POST['user']}' AND 密码='${_POST['pwd']}'");
$row = mysql_fetch_object($res);
if($row->m >0){
    echo "登陆成功";
}else{
    echo "用户名或密码错误";
}
exit;
>

如果你在安装过程中没有设置用户名密码的话,你可以用root用户名与密码登录数据库:用户名:root 密码为空。如果设置过密码忘记了,那不好意思,不能查看密码,只能查看用户名,因为mysql密码是动态md5加密,是不可逆向查询的。
关于查询用户名:select from mysqluser ;

1、安装好wamp后,运行WampServer程序,选择MySQL,进入MYSQL控制台;
2、进入控制台后,提示输入密码(不用输入任何密码,因为密码为空),按回车键进入;
3、输入“USE mysql;”然后回车,意思是选择mysql数据库;
4、输入“update user set password=password(‘这里是密码,如:root’) where user=’root’;”然后回车;返回信息:
Query OK, 0 rows affected (000 sec)
Rows matched: 2 Changed: 0 Warnings: 0
5、输入quit退出控制台;
6、重启mysql服务;
7、输入用户名、你设置定的密码,登录成功。
这样mysql登录与密码是没问题了,但是使用phpmyadmin登录不了,提醒密码无效了,这个因为我们还有一步这完成
这样仅仅是修改了mysql的密码,如果访问phpmyadmin,会提示你权限问题之类。找到phpmyadmin安装目录,一般是在wamp/apps/phpmyadmin/这个位置,打开configincphp文件,编辑如下几行:
$cfg['Servers'][$i]['auth_type'] = '>一MySQL密码的恢复方法之一如果忘记了MySQL的root密码,可以用以下方法重新设置:1切换到root下suroot2KILL掉系统里的MySQL进程;killall-TERMmysqld3用以下命令启动MySQL,以不检查权限的方式启动;safe_mysqld--skip-grant-tables&4然后用空密码方式使用root用户登录MySQL;mysql-uroot5修改root用户的密码;mysql>updatemysqlusersetpassword=PASSWORD('123456')whereUser='root';mysql>flushprivileges;mysql>quit重新启动MySQL,就可以使用新密码登录了。二MySQL密码的恢复方法二有可能你的系统没有safe_mysqld程序(ubuntu *** 作系统,apt-get安装的mysql),下面方法可以恢复1切换到root下suroot2停止mysqld;/etc/initd/mysqlstop3用以下命令启动MySQL,以不检查权限的方式启动;mysqld--skip-grant-tables&4然后用空密码方式使用root用户登录MySQL;mysql-uroot4修改root用户的密码为123456(当然,你需要将123456改成你要设置的密码);mysql>updatemysqlusersetpassword=PASSWORD('123456')whereUser='root';mysql>flushprivileges;mysql>quit重新启动MySQL/etc/initd/mysqlrestart就可以使用新密码123456登录了。

mysql就能重置密码,或是你有外围记录。
-----------------------------------------
以下资料来自互联网,并非本人所写,但是都是这个思路!
------------------------------------------
MySQL密码丢失的找回方法
破解本地密码:
Windows:
1用系统管理员登陆系统。
2停止MySQL的服务。
3进入命令窗口,然后进入MySQL的安装目录,比如我的安装目录是c:\mysql,进入C:\mysql\bin
4跳过权限检查启动MySQL,
c:\mysql\bin>mysqld-nt –skip-grant-tables
5重新打开一个窗口,进入c:\mysql\bin目录,设置root的新密码
c:\mysql\bin>mysqladmin -u root flush-privileges password "newpassword"
c:\mysql\bin>mysqladmin -u root -p shutdown
将newpassword替换为你要用的root的密码,第二个命令会提示你输入新密码,重复第一个命令输入的密码。
6停止MySQL Server,用正常模式启动Mysql
7.你可以用新的密码链接到Mysql了。
Unix&Linux:
1用root或者运行mysqld的用户登录系统;
2.利用kill命令结束掉mysqld的进程;
3.使用–skip-grant-tables参数启动MySQL Server
shell>mysqld_safe –skip-grant-tables &
4为root@localhost设置新密码
shell>mysqladmin -u root flush-privileges password "newpassword"5.重启MySQL Server

方法和详细的 *** 作步骤如下:

方法和详细的 *** 作步骤如下:

1、第一步,打开Navicat并找到mysql,见下图,转到下面的步骤。

2、第二步,执行完上面的 *** 作之后,打开mysql数据库连接,见下图,转到下面的步骤。

3、第三步,执行完上面的 *** 作之后,单击工具栏中的[用户]选项,见下图,转到下面的步骤。

4、第四步,执行完上面的 *** 作之后,可以看到所有mysql用户和密码,见下图,转到下面的步骤。

5、第五步,执行完上面的 *** 作之后,还可以双击要修改其名称的用户,见下图,转到下面的步骤。

6、第六步,执行完上面的 *** 作之后,输入新的用户名,然后单击[保存],成功修改用户名,见下图。这样,就解决了这个问题了。

很容易认为这儿是一个错误,其实可以直接忽略,重新输入密码
[root@localhost ~]# passwd
更改用户 root 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]#
方案二:对密码规则进行设置
这一部分参考"Linux中国"的文章:如何设置 Linux 系统的密码策略
在基于 DEB 的系统中设置密码长度
默认情况下,所有的 Linux *** 作系统要求用户密码长度最少 6 个字符。我强烈建议不要低于这个限制。并且不要使用你的真实名称、父母、配偶、孩子的名字,或者你的生日作为密码。即便是一个黑客新手,也可以很快地破解这类密码。一个好的密码必须是至少 6 个字符,并且包含数字、大写字母和特殊符号。
通常地,在基于 DEB 的 *** 作系统中,密码和身份认证相关的配置文件被存储在 /etc/pamd/ 目录中。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13399800.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-29
下一篇 2023-07-29

发表评论

登录后才能评论

评论列表(0条)

保存